Migrate workloads to containers overview
Use Migrate to Containers to convert VM-based workloads into containers that run on Google Kubernetes Engine (GKE) or Anthos clusters. You can migrate workloads from VMs that run on VMware, AWS, Azure, or Compute Engine, giving you the flexibility to containerize your existing workloads with ease.
You can migrate your VMs from supported source platforms to the following:
- Google Kubernetes Engine (GKE) and Autopilot clusters
- Anthos clusters on VMware
- Anthos clusters on AWS
- Anthos on bare metal
- Cloud Run
About GKE and Anthos clusters
Google Kubernetes Engine (GKE) clusters provide secured and managed Kubernetes services with autoscaling and multi-cluster support. GKE lets you deploy, manage, and scale containerized applications on Kubernetes, powered by Google Cloud.
- Autopilot clusters: GKE provisions and manages the cluster's underlying infrastructure, including nodes and node pools, giving you an optimized cluster with a hands-off experience. For the benefits of using the simplified Linux service manager, see Migrating to Autopilot clusters and Cloud Run.
Anthos is an application management platform that provides a consistent development and operations experience for cloud and on-premises environments. Anthos includes a set of core components, including the following:
Anthos clusters: Container orchestration and management service for running Kubernetes clusters in both cloud and on-premises environments. Anthos relies on Anthos clusters on Google Cloud, Anthos clusters on VMware, or Anthos clusters on AWS to manage Kubernetes installations in the environments where you intend to deploy your applications.
Anthos Config Management: Defines, automates, and enforces policies across environments to meet your organization's security and compliance requirements.
Anthos Service Mesh: Manages and secures traffic between services while monitoring, troubleshooting, and improving application performance.
Anthos security: Secures your hybrid and multi-cloud deployments by providing consistent controls across your environments.
About Cloud Run
Cloud Run is a managed compute platform that enables you to run stateless containers that are invocable by web requests or Pub/Sub events. The simplified Linux service manager lets you deploy your migrated container workloads on Cloud Run.
- For the benefits of using the simplified Linux service manager, see Migrating to Autopilot clusters and Cloud Run.
About Migrate to Containers
For an introduction to the value of Migrate to Containers, as well as high-level views, see the following documentation:
- For the benefits of using Migrate to Containers to migrate to GKE or Anthos, see Benefits of migrating to containers.
- For more information about how Migrate to Containers performs migrations, see Migrate to Containers architecture.
- For a look at the high-level steps and who typically performs them, see the migration journey phases.
Try the following resources to find step-by-step guidance about the migration process.
Use this quickstart to migrate a simple Compute Engine VM. This guide introduces you to the basic steps you'd perform for most Linux migrations.
Use this tutorial to learn how to move a service and its database from a VM to a GKE environment with no code changes. The sample application used is Bank of Anthos, a simulation of a retail banking service, complete with its own transaction processing network and databases.
Use the following labs to create a development environment, including a sample VM to migrate (you do not need an existing Google Account to perform these labs):
With Migrate to Containers, you migrate and modernize your existing workloads to containers on a secure and managed Kubernetes cluster.
The following sections describe the steps for migrating VMs to containers. Follow these sections in order—each builds on the previous.
Qualify source workloads
Determine the Linux and Windows VMs running on VMware, AWS, Azure, or Compute Engine that you want to run as containers on GKE or Anthos:
Review planning best practices. Read advice for application migration, based on migrations of real applications.
Review compatible VM operating systems. Review a list of the operating systems that have been tested with Migrate to Containers.
Migrate to Containers supplies a tool that you run on a VM workload to determine the workload's fit for migration to a container. For more information, see Using the fit assessment tool.
Set up Migrate to Containers
Create a processing cluster to run the Migrate to Containers components that perform the transformations required to migrate a workload from a source VM to a target container:
For VMware, AWS, and Azure, when the target is Google Cloud, there is a dependency on installing Migrate for Compute Engine to facilitate the transfer of workloads into Google Cloud.
For VMware, to migrate the application to run in a container on-premises, you install Anthos clusters on VMware on the vCenter/vSphere environment of the source VMware VM to perform the migration.
For AWS, to migrate the application to run in a container on AWS, you install Anthos clusters on AWS in the region of the source AWS VM to perform the migration.
For Windows VMs, only migration from Compute Engine VMs to containers running on GKE or Anthos on Google Cloud is supported. Therefore, Windows VMs from other sources must first be migrated to Compute Engine VMs by using Migrate for Compute Engine.
For complete instructions, see the setup steps.
Migrate Linux workloads
Migrate your Linux workloads to containers, and then deploy the containers to a GKE or Anthos cluster on Google Cloud, to Anthos clusters on VMware, or to Anthos clusters on AWS version 1.4 or later.
Migrate Windows workloads
Migrate your Windows workloads to containers, and then deploy the containers to a GKE or Anthos cluster on Google Cloud, to Anthos clusters on VMware, or to Anthos clusters on AWS version 1.4 or later.
For instructions, see Uninstall Migrate to Containers.