# statefulset pods - the example from kubernetes document --- apiVersion: v1 kind: Service metadata: name: nginx labels: app: nginx spec: ports: - port: 80 name: web-test clusterIP: None selector: app: nginx --- apiVersion: apps/v1 kind: StatefulSet metadata: name: web-test spec: serviceName: nginx replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.21.6 ports: - containerPort: 80 name: web-test volumeMounts: - name: www mountPath: /usr/share/nginx/html volumeClaimTemplates: - metadata: name: www spec: accessModes: [ ReadWriteOnce ] resources: requests: storage: 1Gi # Stateless nginx pod --- apiVersion: apps/v1 kind: Deployment metadata: name: nginx-test spec: replicas: 5 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.21.6 ports: - containerPort: 80 # pod disruption budget --- apiVersion: policy/v1 kind: PodDisruptionBudget metadata: name: pod-disruption-budget-test spec: minAvailable: 2 selector: matchLabels: app: nginx