在 docker swarm 中添加新工作节点,需要在目标主机上执行由管理节点生成的 docker swarm join 命令。该命令包含集群的入口地址和用于身份验证的 token,执行成功后,新节点会自动加入集群并处于就绪状态,等待分配任务。

如何获取加入集群所需的 Join Token
要获取正确的加入令牌,必须在已经初始化的管理节点上运行 docker swarm join-token worker 命令。该命令会输出完整的 docker swarm join 指令,其中包含了管理节点的 IP 和端口,以及具有 Worker 权限的 Token。如果丢失了 Token,可以再次运行此命令获取新的令牌,旧令牌将自动失效。

docker swarm join-token worker
预期输出示例:
To add a worker to this swarm, run the following command:
docker swarm join \
--token SWMTKN-1-3ugca... \
192.168.99.100:2377
如何在目标主机上执行加入操作
在需要添加的工作节点主机上,直接复制并粘贴上述命令执行。Docker Daemon 会连接到管理节点进行认证,认证成功后,该节点的状态会从 Down 变为 Ready。可以通过在管理节点运行 docker node ls 来验证新节点是否已成功加入。

# 在工作节点主机上执行 docker swarm join \ --token SWMTKN-1-3ugca... \ 192.168.99.100:2377
预期结果:终端返回 This node joined a swarm as a worker.
新节点加入后如何验证其状态
新节点加入后,默认不会立即运行任何服务,除非有可用的调度策略或手动部署。在管理节点使用 docker node inspect <node-id></node-id> 可以查看节点的详细状态,包括 Status.Addr、Status.State 以及 Spec.Role。确保 Status.State 为 Ready 且 Availability 为 Active,表示节点已准备好接收任务。


















