强制Docker Swarm容器分发

我目前有一个容器Jenkins设置在我的docker群环境中,包括3个主站和4个从站节点。 几分钟前,我重新启动了master和slave,注意到当我执行docker ps时,所有容器现在都出现在一个节点上。 不是平均分配在主人和奴隶。

有没有办法让我强迫docker把虫箱均匀分布在虫群主人和奴隶之间?

编辑

 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` 

作为docker 1.12.3,失败后无法在swarm节点上均匀地重新平衡/重新分发容器。

但是你可以尝试这些解决方法:

  1. Drain node将所有容器,容器将停止,并将根据您的scheduling strategy在其他节点上启动。 这个缺点是你将有一个空的node 。 (排水节点)

  2. 您可以停止/删除服务并重新创build服务,使用Bundles可以帮助您保持一致并更快地完成工作,这将根据scheduling strategy将容器分发到您的nodes上。