一 docker swarm 概述
1.1 swarm簡介
Docker Swarm是 Docker 的叢集管理工具,Swarm 在 Docker 1.12 版本之前屬于一個獨立的項目;其主要作用是把Docker叢集抽象為一個整體,并且通過一個統一管理這些 Docker 主機上的各種Docker資源。
1.2 swarm角色介紹
Docker Swarm架構有兩種角色,分别是manager和node, manager是Swarm Daemon工作的節點,包含了排程器、路由、服務發現等功能,負責接收用戶端的叢集管理請求,然後排程Node進行具體的容器工作,比如容器的建立、擴容與銷毀等。manager節點本身也是一個node。
二 實驗環境
2.1 準備虛拟機(安裝完docker之後再克隆)
角色 | 作業系統 | IP位址 | 安裝軟體 |
Master | Centos7.9 | 192.168.100.10 | docker |
Slave | Centos7.9 | 192.168.100.20 | docker |
Slave | Centos7.9 | 192.168.100.30 | docker |
2.2 安裝docker
2.3 修改主機名
2.4 設定主機名映射(三個節點都設定,這裡示範其中一台)
2.5 檢視docker運作狀态
Master
Slave1:
Slave2:
2.6 更換docker鏡像下載下傳位址(可選),示範master節點,其他節點自行配置。
三 初始化swarm(在master節點執行)
四 加入slave計算節點(在slave節點上執行)
4.1 加入計算節點
docker swarm join --token SWMTKN-1-56qqgqkhc3qgf26ay7bb67trbx9gldn80lpdvpumum6fxahm3k-9ayutwgzz44buw7bnbu2z66hc 192.168.100.10:2377,注意末尾這個位址是swarm master的位址
4.2 在管理檢視節點資訊
4.3 建立一個私有網絡,供不同節點上的容器用
4.4 部署一個服務,使用上一步建立的網絡
4.5 檢視剛剛啟動的nginx容器
4.6 動态擴縮容某個服務的容器
4.7 手動down掉一個節點,看看原先運作在這個節點上面的容器會怎麼樣
原先運作在slave2節點的容器在slave1節點上被建立。
本教程針對教學環境,非生産環境。更多内容敬請期待!