?
Dokumen ini menggunakan Manual laman web PHP Cina Lepaskan
當(dāng)你第一次創(chuàng)建 swarm 時(shí),你將一個(gè) Docker Engine(引擎)放入 swarm 模式。要充分利用群模式,您可以向群添加節(jié)點(diǎn):
添加工作節(jié)點(diǎn)會(huì)增加容量。將服務(wù)部署到群集時(shí),引擎會(huì)調(diào)度可用節(jié)點(diǎn)上的任務(wù),無論它們是工作節(jié)點(diǎn)還是管理節(jié)點(diǎn)。當(dāng)您將工人添加到群體中時(shí),您可以增加群體的規(guī)模以處理任務(wù),而不會(huì)影響經(jīng)理人團(tuán)隊(duì)的一致性。
管理器節(jié)點(diǎn)增加了容錯(cuò)能力。Manager 節(jié)點(diǎn)為群體執(zhí)行編排和群集管理功能。在管理器節(jié)點(diǎn)中,單個(gè)領(lǐng)導(dǎo)者節(jié)點(diǎn)執(zhí)行編排任務(wù)。如果一個(gè)領(lǐng)導(dǎo)者節(jié)點(diǎn)出現(xiàn)故障,其余的管理者節(jié)點(diǎn)會(huì)選舉一個(gè)新的領(lǐng)導(dǎo)者并恢復(fù)協(xié)調(diào)和維護(hù)群體狀態(tài)。默認(rèn)情況下,管理節(jié)點(diǎn)也運(yùn)行任務(wù)。
在將節(jié)點(diǎn)添加到群集之前,必須在主機(jī)上安裝 Docker Engine 1.12或更高版本。
Docker 引擎根據(jù)您提供給docker swarm join
命令的連接令牌加入群集。該節(jié)點(diǎn)僅在連接時(shí)使用該令牌。如果隨后旋轉(zhuǎn)該標(biāo)記,則不會(huì)影響現(xiàn)有的群集節(jié)點(diǎn)。請(qǐng)參考以群集模式運(yùn)行 Docker Engine。
要檢索包含工作節(jié)點(diǎn)的連接令牌的連接命令,請(qǐng)?jiān)诠芾砥鞴?jié)點(diǎn)上運(yùn)行以下命令:
$ docker swarm join-token worker To add a worker to this swarm, run the following command: docker swarm join \ --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \ 192.168.99.100:2377
從 worker 上的輸出運(yùn)行命令加入群集:
$ docker swarm join \ --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \ 192.168.99.100:2377This node joined a swarm as a worker.
docker swarm join
命令執(zhí)行以下操作:
將當(dāng)前節(jié)點(diǎn)上的 Docker 引擎切換到群集模式。
向經(jīng)理(manager)申請(qǐng) TLS 證書。
用機(jī)器主機(jī)名命名節(jié)點(diǎn)
基于群集令牌將當(dāng)前節(jié)點(diǎn)加入管理器監(jiān)聽地址處的群集。
將當(dāng)前節(jié)點(diǎn)設(shè)置為Active
可用性,這意味著它可以從調(diào)度程序接收任務(wù)。
將ingress
覆蓋網(wǎng)絡(luò)擴(kuò)展到當(dāng)前節(jié)點(diǎn)。
當(dāng)您運(yùn)行docker swarm join
并傳遞管理器令牌時(shí),Docker 引擎將切換到群集模式,與工作人員相同。經(jīng)理節(jié)點(diǎn)也參與木筏共識(shí)。新的節(jié)點(diǎn)應(yīng)該是Reachable
,但現(xiàn)有的經(jīng)理將仍然是群體Leader
。
Docker 為每個(gè)集群推薦三個(gè)或五個(gè)管理器節(jié)點(diǎn)來實(shí)現(xiàn)高可用性。由于群模式管理器節(jié)點(diǎn)使用 Raft 共享數(shù)據(jù),因此必須有奇數(shù)個(gè)管理器。只要超過一半的管理器節(jié)點(diǎn)的法定數(shù)量可用,群集可以繼續(xù)運(yùn)行。
有關(guān)群體管理員和管理群體的更多詳細(xì)信息,請(qǐng)參閱管理和維護(hù)一群 Docker 引擎。
要檢索包含管理器節(jié)點(diǎn)的連接令牌的連接命令,請(qǐng)?jiān)诠芾砥鞴?jié)點(diǎn)上運(yùn)行以下命令:
$ docker swarm join-token manager To add a manager to this swarm, run the following command: docker swarm join \ --token SWMTKN-1-61ztec5kyafptydic6jfc1i33t37flcl4nuipzcusor96k7kby-5vy9t8u35tuqm7vh67lrz9xp6 \ 192.168.99.100:2377
從管理器的輸出中運(yùn)行命令以加入群集:
$ docker swarm join \ --token SWMTKN-1-61ztec5kyafptydic6jfc1i33t37flcl4nuipzcusor96k7kby-5vy9t8u35tuqm7vh67lrz9xp6 \ 192.168.99.100:2377This node joined a swarm as a manager.
swarm join
命令行參考
Swarm 模式教程