首页/云/Kubernetes 速查/StatefulSet 更新策略(含 partition 灰度)

StatefulSet 更新策略(含 partition 灰度)

RollingUpdate 默认按序号从大到小逐个逆序更新并在每一步等待就绪;partition 可只更新序号 ≥ 分区的 Pod,实现灰度/预热。

Kubernetes 速查云更新于 2026-10-12

配置与灰度

配置与灰度
spec:
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:
      partition: 2      # 只更新序号 >= 2 的 Pod

操作

操作
kubectl patch sts/db -p '{"spec":{"updateStrategy":{"rollingUpdate":{"partition":2}}}}'
kubectl rollout status sts/db
kubectl get pods -l app=db -o custom-columns='POD:.metadata.name,IMAGE:.spec.containers[0].image'
partition 从高序号开始灰度(db-2 先更新),验证后再把 partition 递减到 0 完成全量。

易错点

  • partition 不会阻止手动删除 Pod 后用新模板重建,灰度期间不要随意重启低序号实例
  • 更新失败会停在该序号不再继续(不自动回滚),回滚同样用 rollout undo 并注意逆序

数据来源与参考

  • Kubernetes 官方文档 · StatefulSet(Update Strategies)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌