要将一个 Worker 节点添加到 Docker Swarm 集群中,您需要执行以下步骤:
获取加入命令:
首先,您需要在 Swarm 管理节点上运行docker swarm join-token worker
命令来获取用于新节点加入集群的命令。这通常会返回两个命令,一个使用--advertise-addr
参数来指定一个外部地址,另一个则没有。docker swarm join-token worker
输出将类似于下面这样(请根据实际输出调整):
To add a worker node to this swarm, run the following on the node: docker swarm join \ --token SWMTKN-1-42f7e39a4f8c7e6c38d1c7b84985253178d788e7615a64e18e41080000000000-8992732775640537185065487051109775277400000000 \ 192.0.2.1:2377
在 Worker 节点上运行加入命令:
您需要在想要作为 Worker 加入集群的新节点上运行上述命令。确保替换 IP 地址为管理节点的实际 IP 地址,并且使用正确的 Token。如果您的网络环境需要指定一个不同的 IP 或端口,请使用
--advertise-addr
参数来指定新节点应该对外广播的地址。例如:docker swarm join \ --token SWMTKN-1-42f7e39a4f8c7e6c38d1c7b84985253178d788e7615a64e18e41080000000000-8992732775640537185065487051109775277400000000 \ --advertise-addr 192.0.2.2 \ 192.0.2.1:2377
在这里,
192.0.2.2
是新节点希望其他节点看到的地址,而192.0.2.1:2377
是 Swarm 管理节点的地址。确认 Worker 节点已加入:
您可以使用docker node ls
命令来检查新的 Worker 节点是否已经成功加入到了 Swarm 集群中。docker node ls
这将列出集群中的所有节点及其状态。
注意:确保您的 Worker 节点上安装了与管理节点相同版本的 Docker 引擎,并且防火墙允许必要的端口通信。如果加入失败,请检查错误消息以确定原因,并可能需要重新生成加入令牌或调整网络设置。