亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

更新一個Docker Service是否對線上的活躍用戶產生影響?

更新一個Docker Service是否對線上的活躍用戶產生影響?

嗶嗶one 2018-08-11 10:30:26
當執行docker service update操作時是否對線上的活躍用戶產生影響呢?自己的想法也不知道對不對。我的想法1:有一個docker service ,運行了4個副本,分別是r1,r2, r3, r4 service:r1 聽令,我要更新你,從現在開始Request請求不會打到你那兒去了,你那邊要是還有未返回的Response請抓緊時間返回。r1:收到。所有的Request請求都已經正確返回了。請更新我吧。service:為停止的r1執行更新操作。r1更新完成。繼續加入隊伍。分擔請求。依次執行r2, r3, r4如果我的我的想法成立的話,那就可以說更新一個Docker Service對線上的活躍用戶并不會產生影響。那么問題來了,當我的service只有一個副本的時候呢?我又產生了一個想法。我的想法2:service:哦 當前只有一個副本,在更新之前,我先另啟動一個副本那么這個時候就有兩個副本了,按照想法1依次更新r1, r2 經驗豐富的Docker使用者,請告訴我的想法是否正確。非常感謝!
查看完整描述

1 回答

?
慕的地6264312

TA貢獻1817條經驗 獲得超6個贊

解決這個疑惑需要了解 docker swarm 的 2 個原理:

我簡單解釋一下:

  • 用戶的請求會轉發到 docker swarm 內置負載均衡(VIP),由負載均衡轉發對應的容器,停止容器時會把容器從負載均衡的轉發列表中移除。

  • 更新容器時,docker swarm 的默認機制是 stop-first ,依次先停止舊容器,然后啟動新容器,如果一個 Service 中有 2 個容器就不會影響正常運行,如果只有 1 個容器就會帶來影響。如果把設置改為 start-first ,即使只有 1 個容器,更新時也不會影響正常運行。


查看完整回答
反對 回復 2018-08-31
  • 1 回答
  • 0 關注
  • 378 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號