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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了回滚 - 每天5分钟玩转 Docker 容器技术(141)相关的知识,希望对你有一定的参考价值。

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)的主要内容,如果未能解决你的问题,请参考以下文章

新书发布《每天5分钟玩转Docker容器技术》

14《每天5分钟玩转Docker容器技术》学习--一张图了解docker网络

如何运行容器?- 每天5分钟玩转 Docker 容器技术(22)

如何运行容器?- 每天5分钟玩转 Docker 容器技术(22)

查看 Secret - 每天5分钟玩转 Docker 容器技术(156)

Docker 架构详解 - 每天5分钟玩转容器技术