Restoring/Migrating Kubernetes Applications Out of Place

You can restore an application out of place to any Kubernetes cluster that is added to Commvault Cloud, for application migration or disaster recovery. You can migrate Kubernetes applications between different Kubernetes distributions, clusters, and StorageClasses. Commvault Cloud requires the source and destination cluster to use the same major release of Kubernetes. For example, you can restore Kubernetes 1.23 to Kubernetes 1.23.

You can use out-of-place restores to migrate applications as follows:

  • From on-premises clusters to cloud-managed clusters (for example, Azure Kubernetes Service, Google Kubernetes Engine, and Amazon Elastic Kubernetes Service)

  • From one cloud-managed cluster to another cloud service provider (for example, between Amazon Web Services, Azure, and Google Cloud Platform)

  • From a cloud-managed cluster to a cloud IaaS cluster (for example, from Google Kubernetes Engine, Amazon Elastic Kubernetes Service, or Azure Kubernetes Service to Amazon EC2, Azure, or Google Cloud Platform VM instances)

Go to the Restore Wizard

  1. From the navigation pane, go to Protect > Kubernetes.

    The Overview page appears.

  2. On the Application groups tab, in the row for the application group that you want to restore, click the action button action_button, and then click Restore.

    The Select restore type page appears.

  3. Click Full application.

    The Restore page appears.

  4. Select the applications to restore.

  5. To select a specific backup copy to restore from, do the following:

    By default, Commvault Cloud restores content from the first available, valid backup copy that it finds.

    1. In the upper-right corner of the page, click Change source.

      The Change source dialog box appears.

    2. From the MediaAgent list, select the access node that contains the backup copy.

    3. From the Source list, select the backup copy.

    4. Click Save.

  6. Click Restore.

    The Destination page of the configuration wizard appears.

Destination

  1. For Type, select Out of place.

  2. For Destination cluster, select the cluster to restore the content to.

    You can select any Kubernetes cluster that is added to Commvault Cloud.

  3. From the Access node list, select the access node to perform the restore.

    For optimal performance, select an access node that has low latency to the Kubernetes cluster and the backup copy.

  4. Click Next.

    The Applications page of the configuration wizard appears.

Applications

  1. To modify the application, select the check box next to the application and then click Configure restore options.

  2. Select the namespace to restore the application to:

    • To restore to an existing namespace, from the Namespace list, select the namespace.

    • To create a namespace, click the Add option, and then enter a name for the namespace.

  3. From the Storage class list, select the StorageClass to provision PersistentVolumes from.

    If you intend to back up the restored application with Commvault Cloud, select a StorageClass that has a CSI provisioner, an attacher, and a snapshotter.

  4. Click Save.

  5. In the Change display name to box, enter a name for the restored application.

  6. To configure restore exclusions, click Exclude resources.

    The Restore exclusions window appears.

  7. From Filter list, select an existing restore filter from either the source or destination cluster or click + to add a new filter.

    If you add a new resource filter during restore operation, then it is added to the cv-config namespace.

    Note

    Commvault Cloud needs the cv-config namespace and a custom CRD cvresourcefilters.k8s.cv.io to be present on the cluster. If the namespace and CRD are not present, when you create your resource filter, the software automatically creates a new namespace called cv-config and deploys a new CustomResourceDefinition (CRD) to your cluster.

  8. In the Exclusions area, from the Exclude list, select Exclude by rule.

    The Add rule dialog box appears.

  9. From the list, select Kind, Group, Version, Namespace, Name, or Label, and then specify the rule.

  10. Click Save.

  11. To exclude the application-related API resources, move the Exclude sub-resources toggle key to the right.

    The Exclude sub-resources area appears.

  12. From the Exclude list, select Exclude by Rule

    The Add rule dialog box appears.

  13. From the list, select Kind, Group, Version, Namespace, Name, or Label, and then specify the rule.

  14. Click Save.

  15. Click Next.

    The Restore Options page of the configuration wizard appears.

Restore Options

  1. To delete and overwrite existing data, move the Unconditionally overwrite if it already exists toggle key to the right, and then click Yes in the confirmation dialog box.

    If any data matching the restore data exists in the destination, Commvault Cloud deletes the existing data before starting the restore process.

  2. To use resource modifiers to add, delete, and modify fields in the Kubernetes resource YAMLs that you restore, under Additional options, do the following:

    • To use an existing resource modifier from either the source or destination cluster, select the resource modifier.

    • To specify a new resource modifier or to change an existing modifier, click Edit Modifiers.

    For more information about resource modifiers, see Modifying Fields in Restored Kubernetes Resource YAMLs.

  3. Click Next.

    The Summary page of the configuration wizard appears.

Summary

  1. Review the selected namespaces and restore options.

  2. Click Submit.

Loading...