Tudo o que resta é montar o PersistentVolumeClaim no Pod que deseja consumi-lo. Já sabemos como montar um volume no Pod. A diferença aqui é que ao invés de, por exemplo, emptyDir: { } utilizamos o spec.volumes.persistentVolumeClaim e o claimName.

Abaixo estão todos os manifestos criados nas páginas anteriores Creating Persistent Volumes e Creating PersistentVolumeClaims para facilitar a assimilação do conteúdo.

PersistentVolume

apiVersion: v1
kind: PersistentVolume
metadata:
  name: db-pv
spec:
  capacity:
		storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /data/db

PersistentVolumeClaim

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: db-pvc
spec:
	storageClassName: ""
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 512m

Pod

apiVersion: v1
kind: Pod
metadata:
  name: app-consuming-pvc
spec:
  **volumes:
    - name: app-storage
      persistentVolumeClaim:
        claimName: db-pvc**
  containers:
  - image: alpine
    name: app
    command: ["/bin/sh"]
		args: ["-c", "while true; do sleep 60; done;"]
		volumeMounts:
			- mountPath: "/mnt/data"
			  name: app-storage