Storage Classes

In order to use persistent storage over a PersistentVolumeClaim in your cluster, a StorageClass needs to be specified there. MetaKube clusters already come with a default StorageClass for our SysEleven Stack Block Storage in OpenStack, Elastic Block Store on AWS and Azure Disks on Azure as the default StorageClass built-in:

$ kubectl get storageclasses
NAME                                          PROVISIONER                AGE
sys11-quobyte                                 kubernetes.io/cinder       8d
sys11-quobyte-multi                           cinder.csi.openstack.org   8d
sys11-quobyte-external-provisioner (default)  cinder.csi.openstack.org   8d

or

$ kubectl get storageclasses
NAME                      PROVISIONER            AGE
sys11-aws (default)       kubernetes.io/aws-ebs  8d

or

$ kubectl get storageclasses
NAME                      PROVISIONER               AGE
sys11-azure (default)     kubernetes.io/azure-disk  8d

This means you can use this StorageClass directly in a PersistentVolumeClaim to request a block storage Volume:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: your-persistent-volme-claim
  namespace: your-namespace
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 10Gi