码迷,mamicode.com
首页 > 其他好文 > 详细

回滚 - 每天5分钟玩转 Docker 容器技术(141)

时间:2018-03-14 10:43:01      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:Kubernetes   Docker   容器   教程   

kubectl apply 每次更新应用时 Kubernetes 都会记录下当前的配置,保存为一个 revision(版次),这样就可以回滚到某个特定 revision。

默认配置下,Kubernetes 只会保留最近的几个 revision,可以在 Deployment 配置文件中通过 revisionHistoryLimit 属性增加 revision 数量。

下面实践回滚功能。应用有如下三个配置文件 httpd.v1.ymlhttpd.v2.yml 和 httpd.v3.yml,分别对应不同的 httpd 镜像 2.4.162.4.17 和 2.4.18

技术分享图片

技术分享图片

技术分享图片

通过 kubectl apply 部署并更新应用:

技术分享图片

--record 的作用是将当前命令记录到 revision 记录中,这样我们就可以知道每个 revison 对应的是哪个配置文件。通过 kubectl rollout history deployment httpd 查看 revison 历史记录。

技术分享图片

CHANGE-CAUSE 就是 --record 的结果。如果要回滚到某个版本,比如 revision 1,可以执行命令 kubectl rollout undo deployment httpd --to-revision=1

技术分享图片

此时,revison 历史记录也会发生相应变化。

技术分享图片

revison 1 变成了 revison 4。不过我们可以通过 CHANGE-CAUSE 知道每个 revison 的具体含义。所以一定要在执行 kubectl apply 时加上 --record参数。

滚动更新我们就讨论到这里,下一节开始学习 k8s 的 Health Check 功能。

书籍:
1.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html

2.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html

技术分享图片

回滚 - 每天5分钟玩转 Docker 容器技术(141)

标签:Kubernetes   Docker   容器   教程   

原文地址:http://blog.51cto.com/cloudman/2086302

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!