Migrate to Containers architecture

This topic provides a high-level description of how Migrate to Containers transforms your applications residing on VMs into containers on Google Kubernetes Engine (GKE) or GKE Enterprise.

Migrate to Containers components

The Migrate to Containers solution spans four operational tiers:

  1. Processing -- A GKE or GKE Enterprise processing cluster to run the Migrate to Containers components that perform the transformations required during workload migration from a source VM to the target container.

    The processing cluster can be an existing cluster or a separately configured cluster for migration activities (recommended). The processing cluster is where the Migrate to Containers components are installed. After containers are generated and no further migrations are needed, you can delete the processing cluster or uninstall the Migrate to Containers setup.

  2. Control -- The migration CRD, CLI utility (migctl), and Google Cloud console are the main interfaces by which migration is configured and operated. These operations include:

    • Installing/uninstalling Migrate to Containers on a processing cluster, and validating the deployment.

    • Configuring migration sources.

    • Managing migration workflow actions.

    • Providing visibility of your migrations, including status, progress, and logs.

  3. Workload deployment -- You can deploy Migrated container workloads on any GKE or GKE Enterprise cluster meeting the minimum requirements. The migration artifacts can include one or more Dockerfiles, one or more Kubernetes deployment specs, and a Skaffold configuration file.

  4. Maintenance -- After you migrate container workloads, you typically perform optimization and maintenance operations. The extracted workload content and the generated Dockerfile can be integrated in a CI/CD pipeline for efficient image-based maintenance.

About Migrate to Virtual Machines

With Migrate to Containers, you containerize existing VM-based applications to run on Google Kubernetes Engine (GKE) or GKE Enterprise clusters. To migrate workloads running on VMware to Google Cloud, along with Migrate to Containers, you also need to set up Migrate to Virtual Machines.

You can choose one of the approaches described in the following sections to migrate your VMware workloads to Google Cloud.

Migrate and then modernize

You can migrate to containers by breaking your migration journey into two distinct phases, even for workloads that are suitable for containers:

  1. Migrate workloads to Compute Engine with Migrate to Virtual Machines.

  2. Migrate from Compute Engine to containers with Migrate to Containers.

This method is useful, for instance, in cases where you want to conduct a data-center migration and migrate all workloads into Compute Engine, and only at a second stage selectively modernize suitable workloads to containers.

You can also use this approach to migrate workloads from other source platforms, such as AWS and Azure, for which containerization is not supported in Migrate to Containers.

Migrate and modernize together

You can use Migrate to Virtual Machines along with Migrate to Containers to migrate your workloads to Google Cloud.

What's next