Migrate for Anthos 架构

本主题简要介绍了 Migrate for Anthos 如何将驻留在虚拟机上的应用转换为 GKE 上的容器。 概括来讲,您可以使用 Migrate for Anthos 迁移驻留在 VMware 本地环境、AWS、Azure 或 Compute Engine 中的工作负载(适用于之前迁移过的工作负载或基于虚拟机的云原生工作负载)。

Migrate for Anthos 组件

Migrate for Anthos 解决方案涵盖以下四个操作层级:

  • 处理层级 - 即 GKE 处理集群,用于运行 Migrate for Anthos 组件以便执行将工作负载从来源虚拟机迁移到目标容器工件期间所需的转换。
    • 对于 Linux 工作负载,工件包括容器映像、Dockerfile、数据卷和参考部署 YAML。
    • 对于 Windows 工作负载,工件包括一个 ZIP 文件格式的工作负载内容归档文件和一个 Dockerfile 文件。 处理集群可以是现有工作负载集群,也可以是为迁移活动单独配置的集群(推荐)。安装的 Migrate for Compute Engine 将应用于此集群。生成容器工件并且不需要进一步迁移后,您可以删除处理集群或卸载 Migrate for Compute Engine 安装。
  • 控制层级 - 即 Linux 工作负载的迁移 CRD 和 CLI 实用程序 (migctl) 以及 Windows 工作负载的迁移脚本(非公开 Beta 版);这些是用于配置和操作迁移的主要界面。具体包括以下控制:
    • 在处理集群上安装/卸载 Migrate for Anthos,并验证部署。
    • 配置迁移来源。
    • 管理迁移工作流操作。
    • 透明地监控 Migrate for Anthos 迁移,包括状态、进度和日志。
  • 工作负载执行层级 - 迁移后的工作负载可以在任何满足最低要求的 GKE 集群上执行。
    • 对于 Linux 工作负载,Migrate for Anthos 运行时软件作为 Google 提供的容器映像层嵌入在迁移后的工作负载容器映像中。此 Migrate for Anthos 运行时层执行以下操作:
    • 将虚拟机的操作系统内核替换为由 GKE 节点加载的内核。
    • 配置容器的网络接口、DNS、控制台输出、系统和应用日志记录以及运行状况,以便使用 GKE 服务。
    • 从容器内虚拟机的用户空间(例如由 SysV 样式脚本或 systemd 初始化脚本启动的空间)运行应用和服务。某些虚拟机或硬件相关服务会自动停用。
    • 对于 Windows 工作负载,Migrate for Anthos 会生成一个详细的 Dockerfile 文件。该 Dockerfile 源自官方 Microsoft Windows Server 映像和自动提取的应用内容 ZIP 文件,旨在定义一个可直接构建、随处部署的迁移后工作负载映像。
  • 维护层级 - 迁移后,工作负载映像通常涉及“第二天”维护操作,无论是由于必需的软件包更新、对嵌入式文件的更改,还是对 Migrate for Anthos 运行时软件的更新(如果是 Linux 工作负载)。提取的工作负载内容和生成的 Dockerfile 可以集成到 CI/CD 流水线中,以便实现基于映像的高效维护。