You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否初始创建0副本的Kubernetes StatefulSet并后续扩容?

Kubernetes StatefulSet 0副本创建与副本数更新可行性解答

完全支持创建副本数为0的StatefulSet,后续修改副本数为6、7这类数值的操作也是可行的

一、支持创建0副本的StatefulSet

  • StatefulSet的spec.replicas字段允许设置为0,这是Kubernetes原生支持的配置。创建后集群不会启动任何Pod,对应的PVC(如果配置了volumeClaimTemplates)也不会被创建,直到你将副本数调整为大于0的数值。
  • 示例配置片段:
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: example-sts
spec:
  replicas: 0
  selector:
    matchLabels:
      app: example
  template:
    metadata:
      labels:
        app: example
    spec:
      containers:
      - name: example-container
        image: nginx

二、副本数更新操作可行

  • 当需要启动Pod时,直接通过命令或编辑配置修改副本数即可:
    • 命令方式:kubectl scale statefulset example-sts --replicas=6
    • 编辑方式:kubectl edit statefulset example-sts,手动将replicas值改为目标数字
  • StatefulSet会按照序号顺序(从0开始)依次创建Pod,对应的PVC也会逐个生成(如果配置了volumeClaimTemplates),完全遵循StatefulSet的有序部署特性。
  • 同理,后续如果需要缩容回0,执行同样操作即可,Pod会按逆序(从最大序号开始)逐个删除,PVC默认不会被删除(除非配置了persistentVolumeClaimRetentionPolicy)。

内容的提问来源于stack exchange,提问作者anudeep itha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 13:35:33