1. Consul基本介紹
參考:
服務發現 - consul 的介紹、部署和使用: https://www.cnblogs.com/xiaohanlin/p/8016803.html
Consul 使用手冊:https://blog.csdn.net/liuzhuchen/article/details/81913562
爲什麼要使用Consul
這要從目前流行的微服務談起,微服務的概念及應用可以網上搜索、很多 。Consul主要用來做分佈式應用的微服務架構中服務註冊及發現功能的軟件工具。微服務中提供很多不同的服務,客戶端訪問需要取得服務的網絡位置,Consul就提供了一個數據中心,將各種微服務註冊到這裏,Consul屏蔽了後端發現服務網絡位置的複雜的邏輯方法,通過服務名稱地址,提供給客戶端方便發現相應的服務,進行調用、使用服務。
入門
官網:https://www.consul.io
在線手冊:https://blog.csdn.net/liuzhuchen/article/details/81913562
學習:https://learn.hashicorp.com/consul/getting-started/install.html
介紹
Consul 是一套開源的分佈式服務發現和配置管理系統,由 HashiCorp 公司用 Go 語言開發。它具有很多優點。包括:基於 raft 協議,比較簡潔; 支持健康檢查, 同時支持 HTTP 和 DNS 協議 支持跨數據中心的 WAN(廣域網) 集羣 提供圖形界面 跨平臺,支持 Linux、Mac、Windows。
consul是使用go語言開發的服務發現、配置管理中心服務。內置了服務註冊與發現框 架、分佈一致性協議實現、健康檢查、Key/Value存儲、多數據中心方案,不再需要依賴其他工具(比如ZooKeeper等)。服務部署簡單,只有一個可運行的二進制的包。每個節點都需要運行agent,他有兩種運行模式server和client。每個數據中心官方建議需要3或5個server節點以保證數據安全,同時保證server-leader的選舉能夠正確的進行。raft(分佈式一致性協議):見《一致性算法之:Raft》
2. 環境安裝
系統環境 linux centos7.2
wget https://releases.hashicorp.com/consul/1.5.1/consul_1.5.1_linux_amd64.zip
unzip consul_1.5.1_linux_amd64.zip (解壓到當前目錄爲consul)
touch consul
./consul
consul -v
上圖,說明consul安裝成功。
mv consul /usr/local/bin
這樣配置爲系統環境變量,這樣任何目錄下直接執行consul,都可以了。
啓動Consul服務器
consul agent -server -ui -node=consul_myserver -bootstrap-expect=1 -bind=172.31.177.244 -data-dir /consul/data -client 0.0.0.0
其中172.31.177.244爲內網地址
訪問Consul服務器,http://ip:8500/ui/
說明consul服務器正常啓動。
持續完善,待續...