Migration is a process of moving a workload from one infrastructure to another. For example, it can be from an on-premises data center to the public cloud or from one cloud provider to another. The workload can be anything such as database, backups, or any other files.
However, not all workloads are suitable for migration. Here are few of the best candidates for migration
- Large volumes of workloads, which vary from time to time
- Storage, backup, and archive data
- Loosely coupled data or microservices
- An application that supports downtime
Strategies of Migration
Here are a few things to be considered before you migrate:
- Do you want to lift and shift or change the architecture?
- Check if an application is resilient to restart
- Choose an application that has less dependency and is business-critical. Stateless is a good candidate for migration
- Check all the licensing compliance for hardware and software
It’s important to remember that migration is a journey. You are at point A with your existing infrastructure and environments, and you want to reach point B. To get from A to B, you can choose any type of migration mentioned above.
The following diagram illustrates the path of this journey.

What is Migrate for Anthos
Making modernization easy
Migrate for Anthos provides a better way to migrate and modernize your applications using Google Kubernetes Engine (GKE). You don’t even have to rewrite your architecture or change anything in the source code. Migrate for Anthos will take care of most of the configuration.
Migrate for Anthos can migrate both Windows and Linux applications. Windows applications can be running on a Google Compute Engine VM. In addition to Google Compute Engine, Linux applications can also be hosted on-prem with one of the following:
- VMware vSphere
- AWS EC2
- Azure VMs
Benefits of migrating to the container using Migrate for Anthos
- Containers are lightweight and portable and can move between cloud environments or on-premises.
- Containers enable Hybrid and Multi-Cloud Adoption
- Containers are more agile in nature
- Releasing frequent updates and deployment processes becomes easy
- GKE provides operating system upgrades, monitoring, and health check of applications without any hassle. Thus provides better security for your application
Components of Migrate for Anthos:
- Discovery tool: Used to determine whether the workload is suitable for migration or not
- Processing cluster: Kubernetes cluster that handles all the migration and installation
- Migctl: A command-line tool to communicate with Migrate for Anthos
Prerequisites for using Migrate for Anthos
- Select or create a new project from the project selector Cloud Platform
- Make sure that billing is enabled for your Cloud project
- Ensure that you have enabled the Compute Engine API
- Ensure that you have enabled the Google Kubernetes Engine API.
export PROJECT_ID=<PROJECT_ID>
export CLUSTER_ID=<CLUSTER_NAME>
export ZONE=<ZONE>
gcloud init
gcloud projects create ${PROJECT_ID} –name=${PROJECT_ID}
gcloud config set project $PROJECT_ID
Migrating VM to the container using Migrate for Anthos

Let’s look at how quickly you can plan and execute the migration with Migrate for Anthos Dashboard
- Step 1: Discovery tool
- Step 2: Adding Processing Cluster
- Step 3: Adding Source
- Step 4: Migration
Step 1: Discovery tool
The first step is to check whether your workload is suitable for migration or not. That’s where a discovery tool can help you to make sure that you make all the changes before you migrate. Go to the Fit Assessment tab, and follow the steps given on the screen. You will have the result as a JSON file.

The final Assessment result will look like the example mentioned in the image given below.

Step 2: Adding Processing Cluster
Once you know that your workload is suitable for migration, your next step is to add the processing cluster that handles all the migration jobs as well as the installation of Migrate for Anthos.
Go to the processing cluster tab, and click on add processing cluster. You need a service account to follow the steps.

Check the health status of your processing cluster, once it is ready, you will have something like this

Step 3: Adding Source
This is where you define where your source (workload) is located. Go to the sources tab and click on add source. Follow the steps given in the picture. Also, add the processing cluster, which you have created in the previous step

Step 4: Migration
This is the final step where you need to define the source VM, processing cluster, and create a migration plan.

Once the process is completed, you will have the Docker artifact to deploy your compute engine to the Kubernetes engine. You can change the YAML configuration according to your use case.

YAML File:

Deploy the above artifacts in GKE Cluster to check if everything is working fine.
You have successfully completed the migration in simple steps without having to rewrite any architecture. This is the power of Migrate for Anthos. There are endless possibilities for migration that can be easily achieved using Migrate for Anthos.