Migrate to Containers CLI architecture

This page provides a high-level description of how Migrate to Containers CLI transforms your applications residing on virtual machine (VM) instances into artifacts that you can use to deploy your application components from the source environment to a target cluster on Google Kubernetes Engine (GKE) or GKE Enterprise.

Migrate to Containers CLI components

Modernization using Migrate to Containers CLI spans across three steps: Transformation, Workload deployment, and Maintenance.

process architecture

  1. Transformation -- Migrate to Containers CLI is used to transform a VM-based application component into a container-based application component ready to be deployed. This spans across five phases:

    1. Copy -- Copy the file system of the target machine to the local machine.
    2. Analyze -- Analyze the file system to create a migration plan.
    3. Edit -- Edit the plan to modify the migration outputs to fit your needs.
    4. Generate -- Generate artifacts such as Docker files, Docker contexts, Kubernetes deployment files and Skaffold configuration.
    5. Migrate data -- Copy the data files into persistent volumes. This is optional.
  2. 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.

  3. 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.

What's next