replicated vs global mode - 每天5分钟玩转 Docker 容器(105)
Swarm 可以在 service 創(chuàng)建或運(yùn)行過(guò)程中靈活地通過(guò)?--replicas?調(diào)整容器副本的數(shù)量,內(nèi)部調(diào)度器則會(huì)根據(jù)當(dāng)前集群的資源使用狀況在不同 node 上啟停容器,這就是 service 默認(rèn)的?replicated?mode。在此模式下,node 上運(yùn)行的副本數(shù)有多有少,一般情況下,資源更豐富的 node 運(yùn)行的副本數(shù)更多,反之亦然。
除了?replicated?mode,service 還提供了一個(gè)?globalmode,其作用是強(qiáng)制在每個(gè) node 上都運(yùn)行一個(gè)且最多一個(gè)副本。
此模式特別適合需要運(yùn)行 daemon 的集群環(huán)境。比如要收集所有容器的日志,就可以?global?mode 創(chuàng)建 service,在所有 node 上都運(yùn)行?gliderlabs/logspout?容器,即使之后有新的 node 加入,swarm 也會(huì)自動(dòng)在新 node 上啟動(dòng)一個(gè)?gliderlabs/logspout?副本。
?
docker service create \
? ? ? ?--mode global \
? ? ? ?--name logspout \
? ? ? ?--mount type=bind,source=/var/run/docker.sock,destination=/var/run/docker.sock \
? ? ? ?gliderlabs/logspout
?
?
可以通過(guò)?docker service inspect?查看 service 的 mode。
這里是?Global,如果創(chuàng)建 service 時(shí)不指定,默認(rèn)是?Replicated。
無(wú)論采用 global mode 還是 replicated mode,副本運(yùn)行在哪些節(jié)點(diǎn)都是由 Swarm 決定的,作為用戶我們有沒(méi)有可能精細(xì)控制 service 的運(yùn)行位置呢?
下一節(jié)我們來(lái)解答這個(gè)問(wèn)題。
書(shū)籍:
1.《每天5分鐘玩轉(zhuǎn)Docker容器技術(shù)》
https://item.jd.com/16936307278.html
2.《每天5分鐘玩轉(zhuǎn)OpenStack》
https://item.jd.com/12086376.html
轉(zhuǎn)載于:https://blog.51cto.com/cloudman/2050054
總結(jié)
以上是生活随笔為你收集整理的replicated vs global mode - 每天5分钟玩转 Docker 容器(105)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 工信部推动云计算健康快速发展 催生巨大市
- 下一篇: Microsoft Enterprise