1、StatefulSet 中 volumeClaimTemplates 详解
一、volumeClaimTemplates 的核心作用
在 Kubernetes 中,StatefulSet
用于管理有状态应用(如数据库、分布式存储),其核心特性是为每个 Pod 提供稳定的标识、顺序性和持久化存储。volumeClaimTemplates
是 StatefulSet 特有的字段,用于为每个 Pod 实例动态生成独立的 PersistentVolumeClaim(PVC),确保每个 Pod 拥有专属的持久化存储,且存储随 Pod 生命周期保持绑定关系。
二、volumeClaimTemplates 配置参数详解
yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mysql-statefulset
spec:
serviceName: "mysql-headless" # 无头服务,用于Pod域名解析
replicas: 3 # 副本数,将生成3个PVC
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql:8.0
volumeMounts:
- n