Consul服務發現
在上一篇文章已經演示過如何安裝Consul,consul安裝完畢後,agent就可以啟動了,agent啟動有兩種方式,一種是以server方式,另一種是以client方式,每個資料中心至少有一個agent執行在server模式,一般建議是3或者5個server。現在有3臺虛機分別為:192.168.56.11 192.168.56.12 192.168.56.13 這三臺agent,下面演示過程中讓“192.168.56.11”的agent以server方式啟動,“192.168.56.12 192.168.56.13”這兩個以client方式啟動。
step1:為了實現三臺虛機之間無障礙互動,首先應關閉三臺機子的防火牆,執行命令"
step2:在192.168.56.11這臺機子上以server方式啟動agent,執行命令"consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -node=Docker-1 -bind=192.168.56.11" ,"Docker-1" 是節點的名字
執行完如上圖所示,之後就不要在上圖的命令框中執行命令了。注意:當agent啟動後就不要在當前命令框中輸命令,重新開啟一個,如下圖所示:我將每臺虛機都開啟了兩個,標註了"
step3:在192.168.56.11的第二臺機子上執行命令"consul members",檢查agent是否已經啟動,結果如下圖所示,顯示了agent的狀態為"alive" 型別為"server"
step4:以Client方式啟動192.168.56.12的agent,輸入命令"consul agent -data-dir /tmp/consul -node=Docker-2 -bind=192.168.56.12" 節點命名為"Docker-2"
step5:在192.168.56.12的第二臺機子上查詢agent是否已經啟動,執行命令"
step6:在192.168.56.13上以Client方式啟動agent,執行命令"consul agent -data-dir /tmp/consul -node=Docker-3 -bind=192.168.56.13",節點命名為"Docker-3"
step7:檢查agent是否啟動,同192.168.56.12一樣在第二臺虛機上輸入命令"consul members"如下圖所示
step8:將兩個以Client方式啟動的192.168.56.12和192.168.56.13加入到192.168.56.11的server中去,該命令要在192.168.56.11的第二臺虛機中執行,執行命令"consul join 192.168.56.12"和"consul join 192.168.56.13"就可將兩個client 加入到Server中去,每執行一次操作,可查詢一下節點是否成功新增