您正在查看旧版的 Migrate for Compute Engine(原 Velostrata)的文档。您可以继续使用此版本,也可以使用当前版本

调整虚拟机,使其能够在 Google Cloud 上运行

为了在 Google Cloud 上正常运行,迁移后的虚拟机可能需要更改配置。Migrate for Compute Engine 会自动处理一些配置更改,但您也可以为 WindowsLinux 系统编写自定义配置脚本。自定义配置可让虚拟机及其操作系统 (OS) 在 Google Cloud 上运行。这些自定义配置称为适配。以下部分介绍了如何自定义虚拟机和操作系统适配。

自定义虚拟机适配

Migrate for Compute Engine 会自动处理许多虚拟机适配,但您可以根据需要编写适用于 Linux 的自定义配置。例如,您可以安装驱动程序来启动虚拟机。

Migrate for Compute Engine 可以在迁移期间执行脚本以启用这些适配。脚本可以由客户开发,也可以由 Migrate for Compute Engine 在支持套餐中提供。

脚本可以在三种机器状态(对于 Windows 虚拟机)或阶段(对于 Linux 虚拟机)下运行:

MachineState(Windows 虚拟机) 阶段(Linux 虚拟机) 说明
来源 来源 本地
Migrate for Compute Engine velos 当虚拟机在缓存模式下运行时运行
分离 分离 在分离操作之后运行

要详细了解适配,请参阅 Linux 适配Windows 适配

操作系统适配

本部分介绍由 Migrate for Compute Engine 执行的操作系统适配,以及针对云端运行和分离操作向 Windows 和 Linux 虚拟机所做的修改。

自动执行的虚拟机更改

Migrate for Compute Engine 使用自动安装的软件包来准备 Linux 虚拟机,以便在 Google Cloud 中启动。只有在检测到云端运行操作时,更改才会激活,并且软件包可以在虚拟机迁移后仍保持安装状态。如果卸载了软件包,则所有更改都会还原。

对系统进行的一组更改包括:

  • 允许在 Google Cloud 上启动。
  • 启用串行控制台。
  • 针对 Migrate for Compute Engine 存储渠道进行的特定于云端的更改。
  • 针对云迁移进行的特定于硬件的适配。

针对 Windows 虚拟机上云端运行操作的修改

在将 Windows 虚拟机迁移到 Google Cloud 之前,Migrate for Compute Engine 会关停虚拟机并截取快照。然后,Migrate for Compute Engine 会修改网络和存储驱动程序,使虚拟机能够在云端启动。

  • 安装适用于 Migrate for Compute Engine 的 NETKVM 驱动程序。
  • 更改网络配置。
  • 调节系统,以访问 iSCSI 和 MPIO。
  • 更改许可/版本。
  • 停用 VMware 工具。
  • 更改页面文件位置。
  • 确保已停用休眠功能。
  • 更改恢复选项。
  • 启用 RDP。
  • 部署 Migrate for Compute Engine 框架,以便您可以运行自定义操作。

针对 Windows 虚拟机分离操作的修改

除了在执行云端运行操作期间作出的更改之外,Migrate for Compute Engine 还会在 Windows 虚拟机分离期间安装 Google Cloud 云代理。

针对 Linux 虚拟机上的云端运行操作的修改

在迁移前,必须提供 Migrate for Compute Engine 软件包。

迁移安装了 VMware 工具的虚拟机时,Migrate for Compute Engine 会正常关停虚拟机并截取虚拟机快照。然后,Migrate for Compute Engine 修改网络和存储驱动程序,使虚拟机能够在 Google Cloud 上启动。这些修改包括:

  • 更改为启动序列 (initrd)。
  • 启用串行控制台。
  • 在云端动态应用以下修改:
    • 使用 _netdev 选项移动装载点以正确关停。
    • 重新映射交换文件。
    • 启动 Migrate for Compute Engine keep-alive 服务。
    • 执行磁盘优化。
    • 安装 Compute Engine Linux 访客环境软件包。
    • 将未迁移的磁盘从 /etc/fstab 中移除。
    • 更改网络配置,包括:
      • 启用 sshd(使用基于密钥的身份验证)。
      • 移除静态 IP 和路由:Migrate for Compute Engine 软件包会删除所有静态配置。
      • 重新配置默认网络接口 (eth0) 以使用 DHCP。
      • 更新 /etc/hosts 中主机名的主 IP 地址:某些应用依靠 /etc/hosts 提取本地 IP 地址。软件包使用新 IP 地址更新 /etc/hosts 以保持兼容性。
      • 将 NTP 配置更新为 metadata.google.internal
      • 如有必要,请将 MTU 重置为 1460。
      • 移除永久性 MAC 地址配置,例如:rm -f /etc/udev/rules.d/70-persistent-net.rules
  • 根据需要对 Google Cloud 进行特定的更改。

在 Compute Engine 上进行流式传输时,每次启动时所做的更改

  • _netdev 启用状态下,重新装载卷。
  • 将交换文件移动到临时卷。
  • 启动 Migrate for Compute Engine keep-alive 服务。
  • 删除(取消映射)未使用的磁盘空间。
  • 移除静态 IP 和路由。
  • 更新 /etc/hosts 中主机名的主 IP。

针对 Linux 虚拟机分离操作的修改

除了针对云端运行操作所做的修改之外,软件包还会在分离后调节网络配置。

  • 移除静态 IP、网络掩码和路由。
  • 移除未使用的 NICS。
  • 移除 NIC 硬件附件。
  • 在 eth0 上实施 DHCP。
  • 实施默认 GW。
  • 配置自定义 DNS 服务器。
  • 配置别名 IP 范围。
  • 移除 Azure 或 AWS 客机代理。

后续步骤