2016-11-30 129 views
2

我目前在我的Docker羣體環境中有一個容器Jenkins設置,其中包括3個主節點和4個從節點。幾分鐘前我重新啓動了主設備和從設備,並注意到當我執行docker ps時,現在所有容器都顯示在一個節點上。不是均勻分佈在主人和奴隸之間。Force Docker Swarm容器分發

有沒有一種方法可以讓我強制泊塢員將容器均勻分佈在我的swarm主人和奴隸上?

編輯

[email protected]  ~   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

你使用的是什麼版本的Swarm,這是1.12.0的Swarm模式嗎?有一個已知的錯誤重新啓動管理器集,最終將在一個節點上的所有容器。你可能正在打這個案子。也許耗盡那個節點將有助於將容器散佈到其他節點。 – abronan

回答

1

由於碼頭工人1.12.3沒有辦法來平衡均勻/失敗後重新分配的羣節點容器。

但你可以嘗試以下解決方法:

  1. Drainnode將所有的容器,容器將停止,將在其他節點取決於你scheduling strategy啓動。缺點是你會有一個空的node。 (瀝乾節點)

  2. 您可以停止/刪除服務,並重新創建它們,使用Bundles將幫助你保持一致,並做得更快,這將導致容器分佈在您nodes取決於你scheduling strategy