A customer asked how I might approach the challenge of migrating applications running on one Kubernetes cluster and restore them onto a new cluster running a different Kubernetes distribution. Assuming you don’t need to migrate the applications under load, backup and restore is a reasonable option.
I recorded two demonstrations showing how to use Tanzu Mission Control to migrate an application between two clusters:
- The first (see here) shows a migration from Rancher to Tanzu Kubernetes Grid
- The second (this video) shows a migration from Rancher to Azure AKS
Source: Rancher on GKE (with Longhorn)
Destination: Azure AKS (with Azure Disk)
- View the applications running
- Use Tanzu Mission Control to take a backup
- Use Tanzu Mission Control to restore into a new cluster
- Confirm the restore included persisted data
To migrate an application between clusters you must ensure the target cluster contains the appropriate storage class. In this demo I made sure I had a storage class named
default in each cluster. Despite the common name, the storage providers in each cluster were different. The storage provided in each cluster will exhibit different performance characteristics. You will want to ensure that the target storage class is appropriate for your use case.