?
This document uses PHP Chinese website manual Release
要以群集模式使用Docker,請(qǐng)安裝Docker 1.12.0
或更高版本。所有平臺(tái)的安裝說(shuō)明都在這里。
當(dāng)前版本的Docker包括swarm模式,用于本地管理稱(chēng)為群集的Docker引擎群集。使用Docker CLI創(chuàng)建群集,將應(yīng)用程序服務(wù)部署到群集,并管理群體行為。
如果您之前使用的是Docker版本1.12.0
,則可以使用獨(dú)立群集,但我們建議您進(jìn)行更新。
與Docker Engine集成的集群管理:使用Docker Engine CLI創(chuàng)建一群Docker引擎,您可以在其中部署應(yīng)用程序服務(wù)。您不需要額外的編排軟件來(lái)創(chuàng)建或管理群。
分散式設(shè)計(jì): Docker Engine在部署時(shí)不需要處理節(jié)點(diǎn)角色之間的差異,而是在運(yùn)行時(shí)處理任何專(zhuān)業(yè)化。您可以使用Docker Engine部署這兩種節(jié)點(diǎn),管理員和工作人員。這意味著您可以從單個(gè)磁盤(pán)映像構(gòu)建整個(gè)群集。
聲明式服務(wù)模型: Docker Engine使用聲明式方法讓您在應(yīng)用程序堆棧中定義各種服務(wù)的所需狀態(tài)。例如,您可能會(huì)描述一個(gè)由帶有消息隊(duì)列服務(wù)和數(shù)據(jù)庫(kù)后端的Web前端服務(wù)組成的應(yīng)用程序。
縮放:對(duì)于每個(gè)服務(wù),您可以聲明要運(yùn)行的任務(wù)數(shù)量。當(dāng)您向上或向下縮放時(shí),swarm管理器會(huì)通過(guò)添加或刪除任務(wù)來(lái)自動(dòng)調(diào)整以保持所需的狀態(tài)。
期望的狀態(tài)協(xié)調(diào): swarm manager節(jié)點(diǎn)持續(xù)監(jiān)視集群狀態(tài),并協(xié)調(diào)實(shí)際狀態(tài)與表達(dá)期望狀態(tài)之間的任何差異。例如,如果您設(shè)置了一個(gè)服務(wù)來(lái)運(yùn)行一個(gè)容器的10個(gè)副本以及一個(gè)承載其中兩個(gè)副本崩潰的工作器,那么管理器將創(chuàng)建兩個(gè)新副本來(lái)替換崩潰的副本。swarm manager將新副本分配給正在運(yùn)行且可用的工作人員。
多主機(jī)聯(lián)網(wǎng):您可以為您的服務(wù)指定覆蓋網(wǎng)絡(luò)。swarm管理器在初始化或更新應(yīng)用程序時(shí)自動(dòng)為覆蓋網(wǎng)絡(luò)上的容器分配地址。
服務(wù)發(fā)現(xiàn): Swarm管理器節(jié)點(diǎn)為swarm中的每個(gè)服務(wù)分配一個(gè)唯一的DNS名稱(chēng)并負(fù)載平衡正在運(yùn)行的容器。您可以通過(guò)群集中嵌入的DNS服務(wù)器查詢(xún)?nèi)杭羞\(yùn)行的每個(gè)容器。
負(fù)載平衡:您可以將服務(wù)的端口暴露給外部負(fù)載平衡器。在群集內(nèi)部,您可以指定如何在節(jié)點(diǎn)之間分發(fā)服務(wù)容器。
默認(rèn)情況下為安全:群中的每個(gè)節(jié)點(diǎn)都強(qiáng)制進(jìn)行TLS相互認(rèn)證和加密,以保護(hù)其自身與所有其他節(jié)點(diǎn)之間的通信。您可以選擇使用自定義根證書(shū)或來(lái)自自定義根CA的證書(shū)。
滾動(dòng)更新:在推出時(shí),您可以逐步將服務(wù)更新應(yīng)用于節(jié)點(diǎn)。swarm管理器允許您控制服務(wù)部署到不同節(jié)點(diǎn)集之間的延遲。如果出現(xiàn)任何問(wèn)題,您可以將任務(wù)回滾到以前版本的服務(wù)。
學(xué)習(xí)群模式的關(guān)鍵概念。
開(kāi)始使用Swarm模式教程。
探索群集模式CLI命令
蜂群
群連接
服務(wù)創(chuàng)建
服務(wù)檢查
服務(wù)ls
服務(wù)RM
服務(wù)規(guī)模
服務(wù)PS
服務(wù)更新