回滾 - 天天5分鐘玩轉 Docker 容器技術(141)

kubectl apply 每次更新應用時 Kubernetes 都會記錄下當前的配置,保存爲一個 revision(版次),這樣就能夠回滾到某個特定 revision。html

默認配置下,Kubernetes 只會保留最近的幾個 revision,能夠在 Deployment 配置文件中經過 revisionHistoryLimit 屬性增長 revision 數量。app

下面實踐回滾功能。應用有以下三個配置文件 httpd.v1.ymlhttpd.v2.yml 和 httpd.v3.yml,分別對應不一樣的 httpd 鏡像 2.4.162.4.17 和 2.4.18學習

經過 kubectl apply 部署並更新應用:code

--record 的做用是將當前命令記錄到 revision 記錄中,這樣咱們就能夠知道每一個 revison 對應的是哪一個配置文件。經過 kubectl rollout history deployment httpd 查看 revison 歷史記錄。htm

CHANGE-CAUSE 就是 --record 的結果。若是要回滾到某個版本,好比 revision 1,能夠執行命令 kubectl rollout undo deployment httpd --to-revision=1blog

此時,revison 歷史記錄也會發生相應變化。部署

revison 1 變成了 revison 4。不過咱們能夠經過 CHANGE-CAUSE 知道每一個 revison 的具體含義。因此必定要在執行 kubectl apply 時加上 --record參數。get

滾動更新咱們就討論到這裏,下一節開始學習 k8s 的 Health Check 功能。it

書籍:
1.《天天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.htmlio

2.《天天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html

相關文章
相關標籤/搜索