0
docker swarm(1.12+)如何與容器更新?例如:在羣集上更新docker容器?
在一個節點上,我有2個容器,都使用4GB的內存,總數是8GB,這等於節點大小。
如果我將一個容器的內存大小更改爲例如6 GB? Will Swarm:
- reschedule容器重新計劃到有6 GB空閒的新節點?
- 無法更新?
- 像以前一樣繼續使用兩個容器嗎?
我無法自己弄清楚。
docker swarm(1.12+)如何與容器更新?例如:在羣集上更新docker容器?
在一個節點上,我有2個容器,都使用4GB的內存,總數是8GB,這等於節點大小。
如果我將一個容器的內存大小更改爲例如6 GB? Will Swarm:
我無法自己弄清楚。
假設您在Swarm上使用服務並明確地爲每個容器保留內存,如果嘗試更新它以保留比可用內存更多的內存,服務將堅持「已分配」狀態。
例如:docker service create --replicas 1 --name nginx --reserve-memory 256M nginx
將成功並創建一個容器,其中256MB爲其預留(如果您的Swarm上有容量)。然後運行docker service update --reserve-memory 300G nginx
和碼頭工人會:
安排一個新的容器如果你沒有與300GB可用的節點,更新服務無法安排,它將處於Allocated
狀態,因此您的服務在此時不會運行。
調度程序會繼續檢查,所以如果資源確實可用,或者如果運行新的帶有較低預留的update
命令,那麼它將根據請求創建容器。