将经理重新添加到群集中

9jyewag0  于 2022-10-23  发布在  Docker
关注(0)|答案(2)|浏览(170)

我有一个带有两个节点的集群。1名经理和1名工人。我在工作节点上运行我的应用程序,为了运行一个测试用例,我强制从停靠器群集群中删除管理器。
我的应用程序继续工作,但我想知道是否有可能在集群中重新添加强制删除的管理器。(我不记得加入令牌,也没有将它们复制到任何地方)
我理解docker建议使用奇数个管理器节点来维持仲裁,但我想知道docker是否在任何地方解决了这样的情况。

hyrbngr7

hyrbngr71#

码头群初始化--强制-新-集群--通告-地址节点01:2377
当您运行带有--force-new-cluster标志的docker swarm init命令时,您运行该命令的Docker引擎将成为能够管理和运行服务的单节点群的管理器节点。管理器拥有关于服务和任务的所有先前信息,工作节点仍然是群的一部分,并且服务仍在运行。您需要添加或重新添加管理器节点,以实现以前的任务分配,并确保您有足够的管理器来维护高可用性和防止丢失仲裁。

lymgl2op

lymgl2op2#

如何从以前的管理器计算机创建新集群,并让工作进程离开以前的集群加入新的集群?对于我来说,这似乎是唯一可能的解决方案,因为您的集群现在没有任何管理器,以前的管理器现在不在任何集群中,您可以只创建一个新集群,并让其他工作进程加入新的集群。


# In previously manager machine

$ docker swarm init --advertise-addr <manager ip address>

# *copy the generated command for worker to join new cluster after this command

# In worker machine

$ docker swarm leave

# *paste and execute the copied command here

相关问题