Docker swarm - 添加新工作者 - 重新扩展服务

时间:2017-06-12 07:26:34

标签: docker docker-swarm

我创建了一个码头管理器。创建了一个服务,并在同一服务器中扩展到5个实例。

我增加了两名工人。现在,如何跨3个节点重新分配5个应用程序实例?

从一开始就没有做任何事情可以做什么吗?

docker service scale id=5做到了。这是正确的方法吗?我不想重新启动已有的实例。它在节点1重新启动。

docker service update servicename

我通过docker swarm leave从群集中删除一个节点。我更新了服务。我的所有实例都在剩余的节点中复制。

很高兴,更新按预期工作。但是,还有另一个转折点。

我添加了节点。然后我更新了服务。现在,我的所有实例都像前面的情况一样运行。它没有使用新节点。

它是如何运作的?

1 个答案:

答案 0 :(得分:1)

要重新分发,您不需要销毁和重新创建服务,但容器将全部在滚动升级中退回。命令为string aname = GetAttributValue<wkHtmlOptionNameAttribute, string>(fi, a => a.Name );

添加或删除节点时,只有在当前状态和目标状态之间存在差异时,才会重新安排docker。在您执行上述更新命令之前,它不会过早地终止运行容器以重新安排在新节点上。