Deployment progressDeadlineSeconds


spec.strategy

定义升级策略,Deployment 的升级有两种策略,一种是 RollingUpdate,滚动升级。顾名思义,就是一个一个 pod 进行升级,而不是同时停止整个服务。这个升级能保证整个升级过程中服务的可用性。另外一种就是 Recreate,先将旧 Pod 下线,再启动新 Pod。 默认是使用 RollingUpdate。

所以 sepc.strategy.rollingUpdate 就是滚动升级的一些详细策略:

  • maxSurge: 在升级过程中,最多可以创建多少个 Pod。也就是说每次滚动的步长。该值不能为0。
  • maxUnavailable: 在升级过程中,最多不可用的 pod 的数量。该值不能为0。

spec.progressDeadlineSeconds

k8s 在升级过程中有可能由于各种原因升级卡住(这个时候还没有明确的升级失败),比如在拉取被墙的镜像,权限不够等错误。那么这个时候就需要有个 deadline ,在 deadline 之内如果还卡着,那么就上报这个情况,这个时候这个 Deployment 状态就被标记为 False,并且注明原因。但是它并不会阻止 Deployment 继续进行卡住后面的操作。完全由用户进行控制。

这个配置就是设置 deadline 的。单位为秒。

spec.revisionHistoryLimit

我们做的回滚操作并不是没有代价的,代价就是旧版本的 ReplicaSet 会被保留,但是不会继续提供服务了。当我们执行回滚操作的时候,就直接使用旧版本的 ReplicaSet。

这个配置就是控制保留多少个版本的 ReplicaSet


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM