下載安裝
wget https://releases.hashicorp.com/consul/1.6.2/consul_1.6.2_linux_amd64.zip
unzip consul_1.6.2_linux_amd64.zip
mv consul /usr/bin/
consul-server啟動(dòng)命令
consul agent -server -bootstrap-expect 3 -data-dir /opt/consul/data -node=s1 -bind=192.168.100.101 -ui -rejoin -config-dir=/opt/consul/consul.d/ -client 0.0.0.0
啟動(dòng)命令說明
-server : 定義agent運(yùn)行在server模式
-bootstrap-expect :在一個(gè)datacenter中期望提供的server節(jié)點(diǎn)數(shù)目,當(dāng)該值提供的時(shí)候,consul一直等到達(dá)到指定sever數(shù)目的時(shí)候才會(huì)引導(dǎo)整個(gè)集群,該標(biāo)記不能和bootstrap共用
-bind:該地址用來(lái)在集群內(nèi)部的通訊,集群內(nèi)的所有節(jié)點(diǎn)到地址都必須是可達(dá)的,默認(rèn)是0.0.0.0
-node:節(jié)點(diǎn)在集群中的名稱,在一個(gè)集群中必須是唯一的,默認(rèn)是該節(jié)點(diǎn)的主機(jī)名
-ui-dir: 提供存放web ui資源的路徑,該目錄必須是可讀的(-ui使用自帶ui)
-rejoin:使consul忽略先前的離開,在再次啟動(dòng)后仍舊嘗試加入集群中。
-config-dir:配置文件目錄,里面所有以.json結(jié)尾的文件都會(huì)被加載
-client:consul服務(wù)偵聽地址,這個(gè)地址提供HTTP、DNS、RPC等服務(wù),默認(rèn)是127.0.0.1所以不對(duì)外提供服務(wù),如果你要對(duì)外提供服務(wù)改成0.0.0.0
-http-port: api端口,覆蓋默認(rèn)的8500
啟動(dòng)一個(gè)consul-client并加入現(xiàn)有server
consul agent -data-dir /opt/rh/data -node=c1 -bind=192.168.100.102 -config-dir=/opt/consul2/consul.d/ -join 192.168.100.101
查看consul節(jié)點(diǎn)
consul members
注冊(cè)一個(gè)服務(wù)
curl -X PUT -d '{"id": "reg1","name": "telegraf","address": "192.168.100.103","port": 80,"tags": ["test","prome","consul"],"checks": [{"http": "http://192.168.100.103:80/metrics","interval": "15s"}]}' http://localhost:8500/v1/agent/service/register
注銷一個(gè)服務(wù)(id字段為標(biāo)識(shí))
curl -X PUT http://127.0.0.1:8500/v1/agent/service/deregister/reg1

圖片.png