Kubernetes StatefulSet Manifest
Jump to navigation
Jump to search
External
Internal
Example
apiVersion: apps/v1 kind: StatefulSet metadata: name: postgresql labels: color: blue spec: replicas: 1 serviceName: postgresql-headless selector: matchLabels: app: postgresql role: master podManagementPolicy: OrderedReady updateStrategy: type: RollingUpdate template: metadata: name: postgresql labels: app: postgresql role: master spec: containers: - ... initContainers: - ... dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: ... terminationGracePeriodSeconds: ... volumeClaimTemplates: # for details see Persistent Volume Claim Manifest - metadata: name: data spec: volumeMode: Filesystem accessModes: - ReadWriteOnce resources: requests: storage: 8Gi
.spec Elements
template
volumeClaimTemplates
"volumeClaimTemplates" is a list of persistent volume claim specifications, defining persistent volume claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one name-matching volumeMount in one container in the template. The name of the claim is specified as .metadata.name.A claim in this list takes precedence over any volumes in the template, with the same name. For more details on persistent claim manifests, see: