Migrate Memphis storage between storageClass's

This tutorial guides you on migrating Persistent Volumes (PVs) from the gp2 storageClass to the new default gp3 storageClass. Before implementing this process in production, it is advisable to perform a thorough test in a testing environment.

Important:

Step 1: Create a new storageClass.yaml file with the required configuration.

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: gp3-new
  annotations:
    storageclass.kubernetes.io/is-default-class: 'true'
provisioner: ebs.csi.aws.com
volumeBindingMode: WaitForFirstConsumer
parameters:
  csi.storage.k8s.io/fstype: xfs
  type: gp3

Step 2: Apply the New StorageClass Configuration

Begin by applying the configuration for the new storageClass:

Step 3:Edit the Old StorageClass Configuration

Edit the old storageClass to change it from the default setting. In this example, the old storageClass is named "gp2."

Make the following change in the configuration:

Step 4: Verify the Configuration

Check the updated storageClass configuration:

Step 5: Update PVCs

Delete the PVC (data-memphis-metadata-0) associated with the old storageClass. The pod itself will also be deleted, resulting in a new PVC assigned to the new storageClass

Ensure the metadata finishes the sync process before going to the next pod.

Delete resources:

Check the status of the PVCs:

Step 7: Continue With Other Stateful Resources

Proceed with the migration for the remaining stateful resources. Remember to delete them individually and validate the sync status before each step.

Important!!! Deleting and validating stateful resources one by one is crucial for a smooth migration process.

Last updated

Was this helpful?