centos7上consul的集群安裝


centos7上consul的安裝

一 下載

下載文件 wget https://releases.hashicorp.com/consul/0.6.4/consul_0.6.4_linux_amd64.zip
unzip consul_0.6.4_linux_amd64.zip

拷貝到適當的位置

查看 consul -v

如果顯示出版本表示沒有問題。如果報錯請重新下載,或者查看環境變量是否設置正確

二打開端口

有8300 8500 8301 如果使用webui 請到官網 下載文件

三 配置集群 (如果是單機測試 用consul agent -dev就行了配置一台機器就可以了)

官網上是建議server3個或以上 client不限數量

此處 server用2個

服務兩台 : s1 192.168.1.81 s2 192.168.1.82

s1 執行以下命令

consul agent -server -bootstrap-expect 2 -data-dir /tmp/consul -node=n1 -bind=192.168.1.81 -dc=dc1

s2命令

consul agent -server -bootstrap-expect 2 -data-dir /tmp/consul -node=n2 -bind=192.168.1.82 -ui-dir ./dist -dc=dc1

-server 表示是server模式

-bootstrap-expect 2 表示是集群中有2台服務器 bootstrap該模式node可以指定自己作為leader ,如果是非leader可不加該參數

-data-dir /tmp/consul 目錄

-node=n2 該服務器節點名

-bind=192.168.1.82 節點綁定的ip

-ui-dir ./dist  非必須 webui的路徑 用web來管理consul

 -dc=dc1  集群的名稱

執行 consul members

發現集群里並沒有其他的服務器

把服務器加入集群

s1 上執行

consul join 192.168.1.82

如果失敗 ,請看是否打開了8301端口

成功后 再次執行 consul members

會顯示有2個服務器節點

Node Address Status Type Build Protocol DC

n1 192.168.1.81:8301 alive server 0.6.4 2 dc1

n1 192.168.1.82:8301 alive server 0.6.4 2 dc1

如果你已經熟悉了,可以是用json格式的配置文件來設置

consul leave 宣布離開集群

當2個server的時候,退出一個,會沒有leader

當3個以上server的時候 退出一個,會在剩下的server中選出新的leader

s1 退出后重新加入 執行一下命令

consul agent -server -bootstrap-expect 2 -data-dir /tmp/consul -node=n2 -bind=192.168.1.81 -ui-dir ./dist -dc=dc1

consul join 192.168.1.82

關於重啟后 ,配置丟失的問題

我們打開n1和n2的/tmp/consul/raft/peers.json,將其內容統一修改為:

["192.168.1.81:8300","192.168.1.82:8300"]

然后重啟n2,但加上-rejoin命令:

$ consul agent -server -bootstrap-expect 2 -data-dir /tmp/consul -node=n2 -bind=192.168.1.82 -ui-dir ./dist -dc=dc1 -rejoin

參考文章 http://tonybai.com/2015/07/06/implement-distributed-services-registery-and-discovery-by-consul/

//查看版本
consul -v


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM