k8s的回滚应用
2024-08-22 14:28:28
kubectl apply
每次更新应用时 Kubernetes 都会记录下当前的配置,保存为一个 revision(版次),这样就可以回滚到某个特定 revision。
默认配置下,Kubernetes 只会保留最近的几个 revision,可以在 Deployment 配置文件中通过 revisionHistoryLimit
属性增加 revision 数量。
下面实践回滚功能。应用有如下三个配置文件 httpd.v1.yml
,httpd.v2.yml
和 httpd.v3.yml
,分别对应不同的 httpd 镜像 2.4.16
,2.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=
通过查看历史 revision 由3版本变成4版本 ,其实这个4版本对应的就是之前的1版本
通过查看当前应用版本发现 符合上面描述的 1版本对应的 httpd:2.4.16
想要实现回滚功能,必须要加 --record 记录应用的版本。
最新文章
- [Java编程思想-学习笔记]第1章 对象导论
- HttpClientUtils
- hdu 1556:Color the ball(第二类树状数组 —— 区间更新,点求和)
- 手把手教你如何用ZBrush刻画脸部
- BZOJ3658 : Jabberwocky
- JavaScript经典语录
- Android工程目录及其作用简介
- android小知识之多个listview在同一界面只有item高亮
- ZooKeeper 入门
- 201521123035《Java程序设计》第五周学习总结
- 【linux】 LINUX FTP搭建
- Python数据分析与挖掘常用模块
- Windows10上安装Keras 和 TensorFlow-GPU
- 运行TensorFlow出现Your CPU supports instructions that this TensorFlow binary was not compiled to use: AV
- 使用卷积神经网络CNN训练识别mnist
- json对象按时间排序
- .net core相关博客
- [转]AJAX 跨源 HTTP 请求
- linux shell scripts:Syntax error: Bad for loop variable
- Windows安装mysql8.0
热门文章
- C#故事
- ArcGIS Server中创建的两个账户有什么区别
- 【SSH】——使用ModelDriven的利与弊
- clone项目到本地
- 基于log4j的消息流的实现之二消息传递
- [CF1065A]Vasya and Chocolate
- TextView AutoLink, ClikSpan 与长按事件冲突的解决
- [Leetcode] Same tree判断是否为相同树
- 遇到问题---java---git下载的maven项目web用tomcat发布时不带子项目
- 使用setTimeout延时10ms执行onunloadcancel