The fact that we have a few EBS volumes available does not mean that Kubernetes knows about their existence. We need to add PersistentVolumes that will act as a bridge between our Kubernetes cluster and AWS EBS volumes.
PersistentVolumes allow us to abstract details of how storage is provided (for example, EBS) from how it is consumed. Just like Volumes, PersistentVolumes are resources in a Kubernetes cluster. The main difference is that their lifecycle is independent of individual Pods that are using them.
Let's take a look at a definition that will create a few PersistentVolumes:
cat pv/pv.yml
The output, limited to the first of the three volumes, is as follows:
kind: PersistentVolume apiVersion: v1 metadata: name: manual-ebs-01 labels: type: ebs spec: storageClassName: manual-ebs capacity: storage: 5Gi accessModes...