十年河東,十年河西,莫欺少年窮
學無止境,精益求精
前提條件:
準備三臺虛擬機,分別安裝docker並將docker設置爲開機自啓動,並執行如下操作
設置主機名
- 設置192.168.182.128 的主機名:
hostnamectl set-hostname broker0 ------------這臺機器爲管理者---------------
- 設置192.168.182.129 的主機名:
hostnamectl set-hostname broker1
- 設置192.168.182.130 的主機名:
hostnamectl set-hostname broker2
其中broker0作爲管理者
1、docker swarm --help
docker swarm --help
其他幫助命令自行查看
2、初始化管理者節點
docker swarm init --advertise-addr 192.168.182.128
其中 192.168.182.128 爲管理者節點borker0
執行該命令後,會給出如下提示:
3、工作節點加入
分別在broker1 和 broker2 虛擬機上執行如下命令,加入集羣
docker swarm join --token SWMTKN-1-4u682r66phgqnyug03jkfsnlfesrvd5yw50a1n04wcigu3onok-ey1n0pdbg0tfi5jc08zylk4w7 192.168.182.128:2377
執行完畢後,回到管理節點,查看當前集羣接點情況
docker node ls
由上圖可知,有一個管理節點,兩個工作節點
在一主二從中,如果管理者節點宕機,我們需要指定一個工作節點來頂替管理者,可通過如下指令
docker node promote broker1 --------------當管理者宕機後,由broker1工作節點接管管理者----------------
執行完畢後,查看是否生效
docker node ls
在實際環境中,最好將兩個工作節點都設置爲Reachable 狀態,因爲這樣設置的好處是:當管理者宕機後,整個集羣依舊可以工作!半數原則。
4、強制離開集羣
docker swarm leave -f
執行該命令後,將會將節點從集羣中移除。如果三臺虛擬機都執行了該命令,則集羣解散
至此,一主二從服務器集羣環境搭建完畢!
@陳大六的博客