默认升级策略为 RollingUpdate(滚动更新),确保高可用性:
• 使用 maxSurge 与 maxUnavailable 控制更新节奏(默认 25%)。升级/回退镜像:
• 使用命令:kubectl set image deployment/container= : 。
• 指定更高或更低的 tag 完成升级或回退(回退)。回退策略(Recreate):
• 修改 strategy.type 为 Recreate,删除 RollingUpdate 配置:
strategy:
type: Recreate
• 会先停旧 Pod,再上新 Pod,适用于可短暂停机场景。
• 使用 kubectl rollout status/history 验证。修订历史限制(revisionHistoryLimit):
• default = 10 ; 控制保留的旧ReplicaSet数量。
• 设置为低值(如 3),可通过 kubectl edit 或 patch 实现。修订历史实际存储规则:
• 实际保存 = revisionHistoryLimit + 1(包括当前修订)。
• 超出最大值时,最旧版本会被删除。注意事项:
• 设为 0 后将失去 rollback 能力。参考
• 太多历史修订可能造成 etcd 或控制面性能下降。参考