---

title: Kubernetes StatefulSet 状态服务(Headless Service、存储与升级)

keywords:

  • StatefulSet
  • Headless Service
  • PVC
  • 有序升级
  • 状态服务

description: 设计与部署状态服务,使用 StatefulSet 与 Headless Service 进行持久存储与有序升级,并提供验证方法。

date: 2025-11-26

categories:

  • 文章资讯
  • 技术教程

---

Kubernetes StatefulSet 状态服务(Headless Service、存储与升级)

关键实践与参数

  • Headless Service:clusterIP: None 提供稳定 DNS 名称(pod 名 + 服务)。
  • 存储:按 volumeClaimTemplates 申请 PVC;不同副本独立存储。
  • 升级策略:podManagementPolicyupdateStrategy: RollingUpdate 保证有序与就绪。

配置示例

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: db
spec:
  serviceName: db
  replicas: 3
  selector:
    matchLabels: { app: db }
  template:
    metadata: { labels: { app: db } }
    spec:
      containers:
        - name: postgres
          image: postgres:16
          volumeMounts:
            - name: data
              mountPath: /var/lib/postgresql/data
  volumeClaimTemplates:
    - metadata: { name: data }
      spec:
        accessModes: [ "ReadWriteOnce" ]
        resources: { requests: { storage: 100Gi } }

验证方法

  • 验证稳定 DNS 与副本有序启动与升级;数据持久性测试。
  • 节点重启与故障演练;观察恢复与数据一致性。
  • 监控存储延迟与容量,规划扩容与备份。

注意事项

  • 有状态服务需独立备份与恢复方案;避免数据丢失。
  • PDB 与 HPA/VPA 协同,避免升级与扩缩冲突。
  • 不同存储类的性能与可用性差异需评估。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部