一体化监控管理平台解决方案,一体化监控管理平台的应用范围
1163
2023-03-07
k8s滚动更新(六)
实践
滚动更新是一次只更新一小部分副本,成功后,再更新更多的副本,最终完成所有副本的更新。滚动更新的最大的好处是零停机,整个更新过程始终有副本在运行,从而保证了业务的连续性。
第二步:部署应用并查看
部署过程如下:
创建三个 Pod
我们发现了如下变化:
每次只更新替换一个 Pod:
每次替换的 Pod 数量是可以定制的。Kubernetes 提供了两个参数 maxSurge 和 maxUnavailable 来精细控制 Pod 的替换数量,我们将在后面结合 Health Check 特性一起讨论。
更新回滚
kubectl apply 每次更新应用时 Kubernetes 都会记录下当前的配置,保存为一个 revision(版次),这样就可以回滚到某个特定 revision。
默认配置下,Kubernetes 只会保留最近的几个 revision,可以在 Deployment 配置文件中通过 revisionHistoryLimit 属性增加 revision 数量。
第一步:下面实践回滚功能。
第二步:部署应用并更新
后面一个部署的应用,会覆盖掉前面的(名称相同)
–record 的作用是将当前命令记录到 revision 记录中,这样我们就可以知道每个 revison 对应的是哪个配置文件。
CHANGE-CAUSE 就是 –record 的结果。
第五步:此时,revison 历史记录也会发生相应变化。
revison 1 变成了 revison 4。不过我们可以通过 CHANGE-CAUSE 知道每个 revison 的具体含义。所以一定要在执行 kubectl apply 时加上 –record参数。
发表评论
暂时没有评论,来抢沙发吧~