Dynamic Volume Provisioning allows storage volumes to be created on-demand. StorageClass should be pre-created to define which provisioner should be used and what parameters should be passed when dynamic provisioning is invoked.
Copy/Paste the following commands into your Cloud9 Terminal.
mkdir ~/environment/templates
cd ~/environment/templates
wget https://eksworkshop.com/beginner/170_statefulset/storageclass.files/mysql-storageclass.yml
Check the configuration of mysql-storageclass.yml
file by following command.
cat ~/environment/templates/mysql-storageclass.yml
You can see the provisioner is ebs.csi.aws.com
and type is gp2
specified as a parameter.
Create storageclass mysql-gp2
by following command.
kubectl create -f ~/environment/templates/mysql-storageclass.yml
You can verify the StorageClass and its options with this command.
kubectl describe storageclass mysql-gp2
We will specify mysql-gp2
as the storageClassName in volumeClaimTemplates at “Create StatefulSet” section later.