Docker安裝Consul

拉取Consul鏡像

$ docker pull consul # 默認拉取latest
$ docker pull consul:1.6.1 # 拉取指定版本

安裝並運行

docker run -d -p 8500:8500 --restart=always --name=consul consul:latest agent -server -bootstrap -ui -node=1 -client='0.0.0.0'
  • agent: 表示啓動 Agent 進程。node

  • server:表示啓動 Consul Server 模式算法

  • client:表示啓動 Consul Cilent 模式。docker

  • bootstrap:表示這個節點是 Server-Leader ,每一個數據中心只能運行一臺服務器。技術角度上講 Leader 是經過 Raft 算法選舉的,可是集羣第一次啓動時須要一個引導 Leader,在引導羣集後,建議不要使用此標誌。shell

  • ui:表示啓動 Web UI 管理器,默認開放端口 8500,因此上面使用 Docker 命令把 8500 端口對外開放。json

  • node:節點的名稱,集羣中必須是惟一的,默認是該節點的主機名。bootstrap

  • client:consul服務偵聽地址,這個地址提供HTTP、DNS、RPC等服務,默認是127.0.0.1因此不對外提供服務,若是你要對外提供服務改爲0.0.0.0安全

  • join:表示加入到某一個集羣中去。 如:-json=192.168.0.11。bash

關閉防火牆或開放8500端口

【查看防火牆是否開啓】服務器

$ systemctl status firewalld

【開啓或關閉防火牆】網絡

$ systemctl start firewalld
$ systemctl stop firewalld

【查看全部開啓的端口】

$ firewall-cmd --list-ports

【開啓80端口】

$ firewall-cmd --zone=public --add-port=2181/tcp --permanent

【重啓防火牆,使其生效】

$ firewall-cmd --reload

若是是阿里雲服務器,須要設置安全組:

來到實例管理頁面,點擊更多,點擊網絡和安全組,點擊安全組配置。

點擊配置規則。

點擊添加安全組規則,端口範圍改成8500。

測試訪問

訪問:hostname:8500/

  1. services:放置服務
  2. nodes:放置consul節點
  3. key/value:放置一些配置信息
  4. dc1:配置數據中心

參考

相關文章
相關標籤/搜索