我目前在我的docker swarm环境中有一个10容器Jenkins设置,包括3个主设备和4个从设备节点。几分钟前我重新启动了主人和奴隶,并注意到当我执行docker ps
时,所有容器现在都显示在一个节点上。不均匀地分布在主人和奴隶之间。
我有办法强制码头工具将容器均匀地分布在我的群主和奴隶身上吗?
修改
root@docker1 ~ master docker version
Client:
Version: 1.12.3
API version: 1.24
Go version: go1.6.3
Git commit: 6b644ec
Built:
OS/Arch: linux/amd64
Server:
Version: 1.12.3
API version: 1.24
Go version: go1.6.3
Git commit: 6b644ec
Built:
OS/Arch: linux/amd64`
答案 0 :(得分:1)
作为docker 1.12.3,在失败后无法在swarm节点上均匀地重新平衡/重新分配容器。
但你可以尝试这些解决方法:
Drain
node
将容纳所有容器,容器将停止,并将根据您的scheduling strategy
在其他节点上启动。这样做的缺点是你将有一个空的node
。 (排出的节点)
您可以停止/删除服务并重新创建服务,使用Bundles
可以帮助您保持一致并加快速度,这将导致容器在nodes
上分发,具体取决于你的scheduling strategy
。