八、kubernetes1.25应用升级、回滚

1、概述

        用户希望应用程序始终可用,而开发人员则需要每天多次部署它们的新版本。在 Kubernetes 中,这些是通过滚动更新(Rolling Updates)完成的。 滚动更新 允许通过使用新的实例逐步更新 Pod 实例,零停机进行 Deployment 更新。新的 Pod 将在具有可用资源的节点上进行调度。

2、前提

在上一篇文章中我们,实例操作了在kubernetes1.25中部署nginx1.14并发布

https://blog.csdn.net/u011837804/article/details/128395432

本篇文章,我们接上篇,部署nginx1.14并且两个副本,效果:

 3、应用升级

我们的生产项目,每次发版都希望不停机切不影响正常使用,咱们看看kubernetes怎么实现的。

本次实例为nginx1.14 升级为nginx1.23.0

命令:

# 执行升级
kubectl set image deploy mynginx nginx=nginx:1.23.0

# 查看升级状态
kubectl rollout status deploy mynginx

注意: 咱们看上面实际操作过程升级前是2个pod,这个是正常的因为两个副本嘛,升级中变成3个pod了,这是为啥呢?kubernetes升级应用为了不影响当前正常使用,会在升级中新建一个pod,等到升级的pod完全运行起来后,才会删除旧pod,这样做的好处就是一旦升级失败,也不影响正常使用,升级中,用户无感知。

4、应用回滚

我们在实际生产项目更新后,发现有bug,想回滚到上一个版本 这个是比较常见的场景,我们看看kubernetes怎么操作。

涉及命令:

# 查看 升级历史记录
kubectl rollout history deploy mynginx

# 撤销上一次升级
kubectl  rollout undo deploy  mynginx

# 按照版本回滚到某一个版本  版本号可以通过 kubectl rollout history deploy mynginx查看
kubectl rollout undo deploy mynginx --to-revision=版本号

# 查看回滚状态
kubectl rollout undo status deploy mynginx

执行回滚上一个版本实例:

 执行回滚某一个版本实例:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈行动派

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值