使用 Migrate for Compute Engine 迁移虚拟机:最佳做法

本文档介绍了在设计使用 Migrate for Compute Engine 将虚拟机 (VM) 迁移到 Google Cloud 时可以考虑的最佳做法。Migrate for Compute Engine 可帮助您将虚拟机从来源环境迁移到 Google Cloud。您的来源环境可能在本地环境、私有托管环境或其他云服务商中运行。

本文档是以下系列文章中的一篇:

如果您计划使用 Migrate for Compute Engine 将虚拟机从支持的来源环境迁移到 Compute Engine,则本文档非常有用。通过在虚拟机迁移项目中尽早实施最佳做法,可以帮助您避免常见误区、费用高的重构工作和后续修复程序。这些来源环境可能包括以下环境:

本文档中介绍的最佳做法涵盖以下方面:

  1. 评估来源环境
  2. 构建基础
  3. 迁移虚拟机
  4. 排查迁移问题

评估最佳做法

本节介绍了最佳做法,以解决在迁移评估阶段时可能出现的常见问题。如设计到 Google Cloud 的迁移中所述,在评估阶段,您将评估来源环境、要迁移到 Google Cloud 的工作负载以及哪些虚拟机支持每个工作负载。

尽早让负责工作负载的团队参与进来

在迁移的第一个阶段,通过涉及和负责负责您环境、工作负载和虚拟机的所有团队来收集有关来源环境的信息。例如,如需评估您的迁移的技术要求,请与开发团队、运营团队、安全团队以及与要迁移的工作负载相关的业务部门和利益相关者进行访谈。如需评估您的迁移的法规要求,请在这些访谈中包括法律和合规团队。

此最佳做法可帮助您避免意外的迁移需求和依赖关系引起的意外和意外问题。

分析环境的复杂性

在评估源环境和虚拟机时,请评估可能影响迁移复杂性的因素。确定标准和数据点,以评估每个工作负载的复杂性。如果迁移的复杂性有所增加,您可能需要投入更多时间和精力才能完成迁移。例如,您可以考虑以下几个因素:

  • 您需要迁移搭载要更新的操作系统的虚拟机吗?
  • 您需要迁移搭载不受支持的操作系统的虚拟机吗?
  • 您需要迁移裸机服务器还是物理服务器吗?
  • 给定 Hypervisor 是否依赖于依赖项?
  • 您是否需要从 Migrate for Compute Engine 目前不支持的 Hypervisor 进行迁移?
  • 您是否依赖某些您不想使用或无法迁移的特定技术或服务?
  • 您需要迁移多少个虚拟机?
  • 这些虚拟机是否有依赖于其他应用、系统或虚拟机?
  • 您的迁移团队是否具有 Google Cloud 经验?
  • 您的迁移团队是否拥有 Migrate for Compute Engine 的经验?
  • 您的安全和治理要求有哪些?
  • 您是否拥有在云端部署资源的策略?
  • 您是否有任何工作负载具有无法更改的硬编码配置?
  • 您的工作负载是否需要获得许可的操作系统或其他获得许可的软件?

在评估迁移计划时,如果您需要从使用不受支持的 hypervisor 管理的环境迁移虚拟机,请遵循迁移物理服务器的指南。为了使此过程正常运行,VMware 主机和 VMware vCenter 实例必须与要迁移的虚拟机位于同一网络中。如果网络中没有 VMware 主机,我们建议您使用以下其中一种方法将虚拟机迁移到 Migrate for Compute Engine 支持的来源环境:

如果您需要迁移支持大量事务或请求的工作负载,请评估更改在源环境与目标环境之间同步的速度。迁移速度可能低于工作负载生成更改的速度。在这种情况下,我们建议您评估适用于这些类型的工作负载的其他迁移工具和技术。例如,如果您迁移的数据库支持每个时间单元的大量事务,则事务传播到目标环境的速度可能不够快,无法完成同步。在这种情况下,目标环境中的虚拟机可能无法完成数据同步,从而使迁移波次无法完成。

此最佳做法可帮助您估算迁移的难度,以及管理迁移项目的利益相关方的预期。

分析当前环境以合理调整目标环境的大小

如需草拟完整的迁移计划,请为要从来源环境迁移的每个虚拟机定义目标环境中每个虚拟机的机器类型。我们建议您收集来源环境中每个虚拟机预配的资源的相关信息以及这些资源的利用率,如迁移到 Google Cloud:评估和发现您的工作负载中所述。

此最佳做法有助于确保您深入了解工作负载。

分析迁移计划

熟悉了迁移结构迁移 Sprint 和波次后,请分析迁移计划以收集有关计划、持续时间、工作量和费用的信息。我们建议您使用加权中间值加权平均值代替单个值,以便您可以在每次迁移波次之后优化分析结果。

例如,在分析迁移计划后,您可能需要确定以下内容的值:

  • 预期迁移时长
  • 每个时间单位预计迁移的虚拟机数量
  • 总迁移费用
  • 每个虚拟机的迁移费用
  • 可用网络吞吐量
  • 您用于备份和灾难恢复的工具与目标环境的兼容性

在分析迁移计划时,请考虑应用的所有部署环境。如果工作负载需要多个部署环境,请考虑这些环境以及分析中每个环境之间的差异。例如,如果您在开发、质量检查和生产环境中部署工作负载,则可能会在分析这些环境有不同数量的虚拟机。您可能需要调整迁移计划以考虑这些差异,并满足迁移期限要求。

此最佳做法可帮助您验证迁移计划。

在掌握经验的同时调整迁移计划

制定迁移计划并开始实施后,您将获得迁移应用和虚拟机、Google Cloud 和 Migrate for Compute Engine 的经验。在迁移过程中,您可以利用这些信息定期重新审视、调整和改进迁移计划。每次迭代至少修改一次迁移计划。您可能会发现自己设定的目标不切实际,或者在未曾预料到的问题上花费了很多精力。

这种最佳做法可帮助您优化迁移计划。

为要迁移的虚拟机安排维护期

如需完成虚拟机的迁移,Migrate for Compute Engine 必须执行可能需要停机的虚拟机操作。规划冗余和切换期,以便执行需要停机的操作。例如,如果要迁移虚拟机集群,则可能需要拆分集群并在迁移后重新组合。

此最佳做法可帮助您避免工作负载意外停机。

规划最佳做法

本部分介绍了解决构建基础时可能出现的常见问题的最佳做法。如在设计到 Google Cloud 的迁移中所述,您将在规划阶段为 Migrate for Compute Engine 创建基本基础架构。

确保您的环境符合要求

在预配和配置基础结构以支持您的迁移时,请确保您的环境满足以下要求:

确保让所有相关团队参与这些要求的分析,因为这些要求涉及计算、网络、安全性和合规性等不同领域。例如,打开防火墙端口可能需要安全团队和网络团队协作处理。

构建基础时,请确保您的环境支持运行 Migrate for Compute Engine 所需的最小网络带宽。此外,我们还建议您执行以下操作:

最佳做法可帮助您避免因不兼容和无法满足的要求而导致的意外问题。

请确保您有足够的资源配额

Google Cloud 对资源用量实施配额限制。Migrate for Compute Engine 需要足够的资源配额来完成虚拟机迁移。例如,Migrate for Compute Engine Cloud Extensions 需要永久性磁盘配额,具体取决于每个 Cloud Extensions 支持的虚拟机的数量。

我们还建议您查看 Compute Engine 实例的 VPC 配额和限制。如果您为来源环境中的虚拟机使用多个 IP 地址,请将目标环境中的虚拟机配置为使用多个 IP 地址

如需确保有足够的配额来完成迁移,请执行以下操作:

  1. 检查您当前的可用配额
  2. 确保您的可用配额符合 Migrate for Compute Engine 配额要求
  3. 如有必要,可请求增加配额

此最佳做法可帮助您避免因配额增加请求周转时间和配额要求而造成的延迟。

升级 Migrate for Compute Engine

如果您需要将 Migrate for Compute Engine 升级到较新版本,请完成或回滚任何运行中迁移,以避免让虚拟机处于不一致状态。例如,在上一阶段进行早期概念验证,您可能设置了较旧的 Migrate for Compute Engine 版本。

此最佳做法可通过使用不同的 Migrate for Compute Engine 版本,帮助您避免停机以及由于虚拟机在迁移之间处于不一致状态而导致的停机和问题。

迁移虚拟机最佳做法

本节介绍了最佳做法,以解决在迁移虚拟机时可能出现的常见问题。如将迁移过程迁移到 Google Cloud 中所述,在迁移虚拟机阶段,您将虚拟机从来源环境迁移到 Compute Engine。

确保在 VMWare 中正确配置客机操作系统

在迁移虚拟机之前,请确保 VMWare vCenter 未报告与客机操作系统 (OS) 相关的任何警告。如果您看到警告,请更改已配置的客机操作系统,以修复客机操作系统配置。

这种最佳做法有助于避免在迁移过程中发生错误。

确保您的虚拟机已正确准备

在迁移虚拟机或物理服务器之前,请确保它们已为迁移进行了正确的准备,并且不会出现任何错误或警告。如果您的虚拟机和物理服务器未准备好进行迁移,可能会导致无法迁移虚拟机等意外结果。

这种最佳做法有助于避免在迁移过程中发生错误。

卸载 Migrate for Compute Engine

完成迁移后,我们建议您执行以下操作:

  1. 卸载 Migrate for Compute Engine
  2. 删除 Migrate for Compute Engine 为迁移过程创建Identity and Access Management 服务帐号
  3. 删除为迁移过程创建的防火墙规则。如需详细了解如何管理防火墙规则,请参阅Google VPC 防火墙规则Amazon VPC 中的互联网工作流量隐私Azure 防火墙文档或本地防火墙文档。

此最佳做法可确保您停用 Migrate for Compute Engine 组件,并可避免任何不必要的结算和管理工作。

问题排查最佳做法

本部分介绍可帮助您调查使用 Migrate for Compute Engine 时可能发生的任何迁移问题的最佳做法。

如需有效排查迁移问题(或迁移后出现的问题),请收集有关 Migrate for Compute Engine、您的环境和工作负载的信息。首先,请收集以下方面的信息:

  • Migrate for Compute Engine 版本。记下您用于迁移项目的 Migrate for Compute Engine 版本。检查 Migrate for Compute Engine 版本说明中是否提及您所遇到的问题。
  • 迁移生命周期阶段。如果迁移失败,请记下您遇到该问题的生命周期阶段,以及问题是否可重现且非暂时性问题。
  • 使用 Cloud Monitoring 和 Cloud Logging。如需收集有关您的环境的信息,我们建议您使用 Cloud Monitoring 和 Cloud Logging 来了解迁移的状态和性能。通过检查 Compute Engine 实例所需的元数据,确保已启用 Cloud Monitoring 和 Cloud Logging。

如需了解详情,请参阅Migrate for Compute Engine 问题排查或通过以下方式诊断问题:收集有关您的环境和 Migrate for Compute Engine 的信息和数据分析

后续步骤