我有 1 个管理节点 (swarm-manager) 和两个工作节点(swarm-worker01 和 swarm-worker02)。我输入了命令 docker node Promotion swarm-worker01
它给了我这个输出:
Node swarm-worker01 promoted to a manager in the swarm.
但是 docker node ls 并没有说明 swarm-worker01 作为管理者:
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
oaquxnmku3s4uhrcp29ijx7rn * swarm-manager Ready Active Leader 19.03.4
xfwywb5wu550lme0epcexrgu1 swarm-worker01 Ready Active 19.03.4
afyhz03k7uoejnm5dlht98ip5 swarm-worker02 Ready Active 19.03.4
如果再次尝试提升节点,我会收到消息:
Node xfwywb5wu550lme0epcexrgu1 is already a manager.
我的API版本是1.40
我有什么遗漏的吗?
最佳答案
我遇到了同样的问题,并通过确保正在升级的工作节点打开了端口 2377 来解决该问题,这是管理器运行所必需的。
关于docker node ls 不会将提升的节点的管理器状态更改为可达,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58516300/