如何配置一個 Docker Swarm 原生集群
![](https://linuxstory.org/wp-content/uploads/2024/06/142715rlz7a8o66idbk19i-800x400.png)
這裡給大家提供Swarm 0.2開箱的即用一些特性。
- Swarm 0.2.0大約85%與Docker引擎兼容。
- 它支持資源管理。
- 它具有一些帶有限制和類同功能的高級調度特性。
- 它支持多個發現後端(hubs,consul,etcd,zookeeper)
- 它使用TLS加密方法進行安全通信和驗證。
那麼,我們來看一看Swarm的一些相當簡單而簡用的使用步驟吧。
1. 運行Swarm的先決條件
我們必須在所有節點安裝Docker 1.4.0或更高版本。雖然各個節點的IP地址不需要要公共地址,但是Swarm管理器必須可以通過網路訪問各個節點。
注意:Swarm當前還處於beta版本,因此功能特性等還有可能發生改變,我們不推薦你在生產環境中使用。
2. 創建Swarm集群
現在,我們將通過運行下面的命令來創建Swarm集群。各個節點都將運行一個swarm節點代理,該代理會註冊、監控相關的Docker守護進程,並更新發現後端獲取的節點狀態。下面的命令會返回一個唯一的集群ID標記,在啟動節點上的Swarm代理時會用到它。
在集群管理器上運行:
# docker run swarm create
3. 啟動各個節點上的Docker守護進程
我們需要登錄進我們將用來創建集群的每個節點,並在其上使用-H標記啟動Docker守護進程。它會保證Swarm管理器能夠通過TCP訪問到各個節點上的Docker遠程API。要啟動Docker守護進程,我們需要在各個節點內部運行以下命令。
# docker -H tcp://0.0.0.0:2375 -d
4. 添加節點
在啟用Docker守護進程後,我們需要添加Swarm節點到發現服務,我們必須確保節點IP可從Swarm管理器訪問到。要完成該操作,我們需要在各個節點上運行以下命令。
# docker run -d swarm join --addr=<node_ip>:2375 token://<cluster_id>
注意:我們需要用步驟2中獲取到的節點IP地址和集群ID替換這裡的
5. 開啟Swarm管理器
現在,由於我們已經獲得了連接到集群的節點,我們將啟動swarm管理器。我們需要在集群管理器中運行以下命令。
# docker run -d -p <swarm_port>:2375 swarm manage token://<cluster_id>
6. 檢查配置
一旦管理運行起來後,我們可以通過運行以下命令來檢查配置。
# docker -H tcp://<manager_ip:manager_port> info
注意:我們需要替換
7. 使用docker CLI來訪問節點
在一切都像上面說得那樣完美地完成後,這一部分是Docker Swarm最為重要的部分。我們可以使用Docker CLI來訪問節點,並在節點上運行容器。
# docker -H tcp://<manager_ip:manager_port> info
# docker -H tcp://<manager_ip:manager_port> run ...
8. 監聽集群中的節點
我們可以使用swarm list命令來獲取所有運行中節點的列表。
# docker run --rm swarm list token://<cluster_id>
尾聲
Swarm真的是一個有著相當不錯的功能的docker,它可以用於創建和管理集群。它相當易於配置和使用,當我們在它上面使用限制器和類同器時它更為出色。高級調度程序是一個相當不錯的特性,它可以應用過濾器來通過埠、標籤、健康狀況來排除節點,並且它使用策略來挑選最佳節點。那麼,如果你有任何問題、評論、反饋,請在下面的評論框中寫出來吧,好讓我們知道哪些材料需要補充或改進。謝謝大家了!盡情享受吧 🙂
via: http://linoxide.com/linux-how-to/configure-swarm-clustering-docker/
作者:Arun Pyasi 譯者:GOLinux 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive