CSI automatic migration

OKD provides automatic migration for supported in-tree volume plug-ins to their equivalent Container Storage Interface (CSI) drivers.

CSI automatic migration is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.

For more information about the support scope of Red Hat Technology Preview features, see https://access.redhat.com/support/offerings/techpreview/.

Overview

With the automatic migration feature enabled, volumes provisioned using in-tree storage plug-ins supported by this feature are migrated to their counterpart CSI drivers.

The following drivers are supported:

  • Amazon Web Services (AWS) Elastic Block Storage (EBS)

  • OpenStack Cinder

  • Azure Disk

  • Azure File

  • Google Compute Engine Persistent Disk (in-tree) and Google Cloud Platform Persistent Disk (CSI)

  • VMware vSphere

CSI automatic migration should be seamless. Enabling this feature does not change how you use all existing API objects (for example, PersistentVolumes, PersistentVolumeClaims, and StorageClasses).

By default, automatic migration is disabled.

CSI automatic migration will be enabled by default in a future OKD release, so it is highly recommended that you test it now and report any issues.

Enabling CSI automatic migration

Enabling CSI automatic migration drains, and then restarts, all nodes in the cluster in sequence. This might take some time.

Procedure

  • Enable feature gates (see Nodes → Enabling features using feature gates).

    After turning on Technology Preview features using feature gates, they cannot be turned off. As a result, cluster upgrades are prevented.

    The following configuration example enables CSI automatic migration to all CSI drivers supported by this feature:

    1. apiVersion: config.openshift.io/v1
    2. kind: FeatureGate
    3. metadata:
    4. name: cluster
    5. spec:
    6. featureSet: TechPreviewNoUpgrade (1)
    7. ...
    1Enables automatic migration for AWS EBS, Cinder, GCP, Azure Disk, Azure File, and VMware vSphere.

    You can specify CSI automatic migration for a selected CSI driver by setting CustomNoUpgrade featureSet and for featuregates to one of the following:

    • CSIMigrationAWS

    • CSIMigrationOpenStack

    • CSIMigrationAzure

    • CSIMigrationAzureFile

    • CSIMigrationGCE

    • CSIMigrationvSphere

    The following configuration example enables automatic migration to the AWS EBS CSI driver only:

    1. apiVersion: config.openshift.io/v1
    2. kind: FeatureGate
    3. metadata:
    4. name: cluster
    5. spec:
    6. featureSet: CustomNoUpgrade
    7. customNoUpgrade:
    8. enabled:
    9. - CSIMigrationAWS (1)
    10. ...
    1Enables automatic migration for AWS EBS only.

Additional resources