OpenShift provides the following provisioner plug-ins, which have generic
implementations for dynamic provisioning that use the cluster’s configured cloud
provider’s API to create new storage resources:
Storage Type |
Provisioner Plug-in Name |
Required Cloud Configuration |
Notes |
OpenStack Cinder |
kubernetes.io/cinder
|
Configuring for OpenStack |
|
AWS Elastic Block Store (EBS) |
kubernetes.io/aws-ebs
|
Configuring for AWS |
For dynamic provisioning when using multiple clusters in different zones, each
node must be tagged with Key=KubernetesCluster,Value=clusterid . |
GCE Persistent Disk (gcePD) |
kubernetes.io/gce-pd
|
Configuring for GCE |
In multi-zone configurations, PVs must be created in the same region/zone as
the master node. Do this by setting the
failure-domain.beta.kubernetes.io/region and
failure-domain.beta.kubernetes.io/zone PV labels to match the master node. |
|
For any chosen provisioner plug-ins, the relevant cloud configuration must also
be set up, per Required Cloud Configuration in the above table.
|
When your OpenShift cluster is configured for EBS, GCE, or Cinder, the
associated provisioner plug-in is implied and automatically enabled. No
additional OpenShift configuration by the cluster administration is required for
dynamic provisioning.
Future provisioner plug-ins will include the many types of storage a single
provider offers. AWS, for example, has several types of EBS volumes to offer,
each with its own performance characteristics; there is also an NFS-like storage
option. More provisioner plug-ins will be implemented for the supported storage
types available in OpenShift.