将Hyper-V VM 迁移到 Azure

本文介绍如何将本地Hyper-V虚拟机(VM)迁移到Azure工具。

Note

教程中演示了方案的最简单部署路径,使你能够快速设置概念证明。 教程尽可能使用默认选项,不会演示所有可能的设置和路径。

本教程介绍如何执行下列操作:

  • 发现你想要迁移的虚拟机。
  • 开始复制 VM。
  • 运行测试迁移,确保一切按预期正常进行。
  • 运行完整的 VM 迁移。

如果没有 Azure 订阅,请在开始前创建 试用订阅

Prerequisites

开始之前:

  1. ReviewHyper-V迁移体系结构。

  2. Review 关于Hyper-V主机进行虚拟机迁移的要求,以及Hyper-V主机和群集需要访问以进行虚拟机迁移的Azure URL。

  3. 请审查您希望迁移到 Azure 的 Hyper-V VM 的要求。

  4. 建议先完成 assess Hyper-V VM 教程,然后再将 Hyper-V 服务器迁移到Azure。

  5. 转到现有项目或 创建新项目

  6. 验证Azure帐户的权限。

    • Azure帐户需要创建 VM 的权限。
    • 写入 Azure 托管磁盘。
    • 管理与Azure Migrate项目关联的恢复服务保管库的故障转移操作。
  7. 有关创建项目并运行发现、评估和迁移所需的 Azure Migrate 内置角色和权限详细信息,请参阅 准备适用于 Azure Migrate 的 Azure 帐户

Note

如果您计划升级 Windows 操作系统(OS),Azure Migrate 和 Modernize 可能会下载 Windows SetupDiag,以便在升级失败时获取错误详细信息。 确保迁移后在 Azure 中创建的 VM 有权访问 SetupDiag。 如果无法访问 SetupDiag,则可能无法获取详细的 OS 升级失败错误代码,但升级仍可以继续。

下载提供程序

若要迁移 Hyper-V VM,需要在 Hyper-V 主机或群集节点上安装软件提供程序(Azure Microsoft Azure Site Recovery提供程序和恢复服务代理)。 Azure Migrate设备不用于Hyper-V迁移。

Note

Azure 迁移设备的发现是配置站点恢复提供程序和在新门户中跟踪 Hyper-V 迁移的先决条件。 若要使用提供程序执行独立迁移,请使用 Azure Migrate 项目中提供的链接 > 执行 > 迁移以打开经典管理门户。

  1. 在 Azure Migrate 项目 >Execute>Migration中,选择 Start execution

  2. 在“指定意向”页上的 “要迁移的内容”下,选择“服务器”或“虚拟机”(VM)。 在要迁移到的位置下,选择Azure VM。

  3. “如何选择工作负荷”下,选择以下选项之一:

    • 从整个库存中手动选择服务器。
    • 从一个评估过渡到使用现有的评估。
  4. 发现方法下,选择与源环境匹配的设备(Hyper-V),然后选择“下一步”。

  5. 若要为 VM 复制准备 Hyper-V 主机,请单击门户中提供的链接以启动站点恢复服务提供商设置。

  6. “发现>要迁移到何处?”中,选择 “Azure VM”。

  7. 根据用于发现的Azure Migrate设备,虚拟化类型已预填充且无法进行编辑。

  8. Target 区域中,选择要将计算机迁移到的Azure区域。

  9. 选择“确认迁移的目标区域为 <区域名称>”。

  10. 选择“创建资源”。 此步骤会在后台创建一个恢复服务库。

    • 选择此按钮后,无法更改此项目的目标区域。
    • 所有后续迁移的目标都是此区域。
  11. Prepare Hyper-V 主机服务器中,下载 Hyper-V 复制提供程序和注册密钥文件。

    • 需要注册密钥才能将Hyper-V主机注册到 Azure Migrate:服务器迁移工具。
    • 生成的密钥有效期为 5 天。

    屏幕截图显示了下载提供程序和密钥。

  12. 将提供程序安装文件和注册密钥文件复制到运行要复制的 VM 的每个Hyper-V主机(或群集节点)。

安装并注册提供程序

若要安装和注册提供程序,请通过 UI 或命令执行以下步骤。

在每个主机上运行提供程序安装文件:

  1. 选择任务栏中的文件图标,以打开安装程序文件和注册密钥下载到的文件夹。

  2. 选择 AzureSiteRecoveryProvider.exe 文件。

    1. 在提供程序安装向导中,确保选择“启用(推荐)”,然后选择“下一步”
    2. 选择“安装”以接受默认安装文件夹。
    3. 选择“注册”以在恢复服务保管库中注册此服务器。
    4. 选择“浏览”。
    5. 找到注册密钥,然后选择“打开”。
    6. 选择“下一步”。
    7. 确保选中直接连接到没有代理服务器的Azure Site Recovery,然后选择Next
    8. 选择完成

在主机上安装提供程序后,请转到 Azure 门户的站点恢复提供程序设置页,然后选择完成注册

显示“完成注册”屏幕的屏幕截图。

完成注册后,可能需要最多 15 分钟,虚拟机才会出现在该工具中。

执行迁移

Note

在门户中,一次最多可选择 10 台计算机进行复制。 如果需要复制更多计算机,请将它们分组为 10 个为一批。

  1. 在 Azure Migrate 项目 >Execute>Migration中,选择 Start execution

  2. 在“指定意向”页上的 “要迁移的内容”下,选择“服务器”或“虚拟机”(VM)。 在要迁移到的位置下,选择Azure VM。

  3. “如何选择工作负荷”下,选择以下选项之一:

    • 从所有库存中,手动选择服务器
    • 从评估 到使用现有评估
  4. 发现方法中,选择与源环境匹配的设备(Hyper-V),然后选择“下一步”。 如果已完成Hyper-V的 Site Recovery 提供程序设置,可以转到下一部分。 否则,请根据上一部分提供的步骤完成设置。

  5. 工作负荷中,选择 目标 VM 安全类型。 Azure Migrate 支持迁移到受信任的启动虚拟机(TVM)。 默认情况下,它将符合条件的 VM 迁移为 TVM。 这些 VM 提供增强的安全功能,例如安全启动和虚拟 TPM,无需额外付费。 建议在适用的情况下使用它们。 然后选择要复制的 VM,然后单击“下一步”。

  6. Target 设置中,选择要迁移到的订阅和目标区域,并指定要在迁移后Azure VM 所在的资源组。 完成以下设置:

  • 可用性选项:选择下列选项之一:

    • 可用性区域 - 将迁移的计算机固定到区域中的特定可用性区域。 使用此选项可在可用性区域之间分发属于多节点应用程序层的计算机。 如果选择此选项,请在“计算”选项卡上为每个选定的计算机指定可用性区域。仅当所选目标区域支持可用性区域时,此选项才可用。
    • 可用性集 - 将迁移的计算机置于可用性集中。 所选目标资源组必须包含一个或多个可用性集。
    • **无需基础设施冗余** - 如果您不需要为迁移的计算机提供可用区(可用性区域)或可用性集群(Availability Sets),请选择此选项。
  • 虚拟网络:选择迁移后Azure VM 将加入的Azure虚拟网络和子网。

  • 缓存存储帐户:保留默认选项,以使用为项目自动创建的缓存存储帐户。 若要使用不同的存储帐户进行复制,请从下拉列表中选择它。

  • 磁盘加密类型,选择:

    • 使用平台管理的密钥进行静态加密
    • 使用客户管理的密钥进行静态加密
    • 通过平台管理的密钥和客户管理的密钥进行双重加密

    Note

    若要使用客户管理的密钥(CMK)复制虚拟机,需要在目标资源组下 创建磁盘加密集 。 磁盘加密集配置对象将托管磁盘映射到包含用于 SSE 的 CMK 的密钥保管库。

  • Azure 混合权益

    • 如果不想应用Azure 混合权益,请选择 No,然后选择 Next
    • 如果你的 Windows Server 计算机享有有效软件保障或 Windows Server 订阅的权益,并且你想要将此权益应用到所要迁移的计算机,请选择“是”。 然后单击“下一步”。
  1. 在“计算”中,查看 VM 名称、大小、OS 磁盘类型和可用性配置(如果在上一步中选定)。 VM 必须符合 Azure 要求

    • VM 大小:如果你正在使用评估建议,则 VM 大小下拉列表会显示建议大小。 否则,Azure Migrate 会根据 Azure 服务订阅中的最接近匹配项来选择大小。 或者,在 Azure VM 大小 中选择手动大小。
    • OS 磁盘:为 VM 指定 OS(启动)磁盘。 OS 磁盘包含操作系统启动加载器和安装程序。
    • 可用性区域:指定要使用的可用性区域。
    • 可用性集:指定要使用的可用性集。
    • 容量预留:如果目标订阅和位置中已有 VM SKU 的容量预留,请在此为该部署指定该容量预留。 容量预留可确保开始迁移时所需的 VM SKU 可用。 现在可以关联预留,也可以跳过此步骤,并在迁移过程中稍后对其进行配置。 SKU 的容量预留可以位于目标订阅和位置中的任何资源组中。了解详细信息
  2. 磁盘中,指定 VM 磁盘是否应复制到 Azure,并选择 Azure 中的磁盘类型(高级 v2、超级磁盘、标准 SSD、标准 HDD 或高级托管磁盘)。 然后选择下一步

    • 可以从复制中排除磁盘。
    • 如果排除磁盘,迁移后它们将不会存在于Azure VM 上。
    • 如果该服务器上已安装移动代理,则可排除磁盘。 了解详细信息
  3. 在“标记”中,选择向虚拟机、磁盘和 NIC 添加标记。

  4. “查看并开始执行”中,查看设置,然后选择“ 查看并启动执行 ”以启动服务器的初始复制。

首次提供

如果这是在Azure Migrate项目中复制的第一个 VM,Azure Migrate:服务器迁移工具会自动在项目所在的同一资源组中预配这些资源。

  • 缓存存储帐户:安装在 Hyper-V 主机上的 Microsoft Azure Site Recovery 提供程序软件将那些配置为复制的虚拟机的复制数据上传到您的订阅中的存储帐户(称为缓存存储帐户或日志存储帐户)。 Azure Migrate 和现代化将上传的复制数据从存储帐户复制到与 VM 对应的副本托管的磁盘。 在为 VM 配置复制时,需要指定缓存存储帐户。 在Azure Migrate项目中首次配置复制时,Azure Migrate门户会自动为该项目创建一个。

跟踪和监视

  1. 在Azure Migrate项目中,转到“执行”>迁移。 使用 “按应用程序查看 ”或 “按工作负荷查看 ”切换项分组方式。

  2. 复制按如下方式进行:

    • 启动复制作业成功完成后,计算机将开始向 Azure 进行初始复制。
      • 在初始复制期间,Azure Migrate创建 VM 快照并将磁盘数据从快照复制到Azure中的副本托管磁盘。
      • 初始复制完成后,增量复制将会开始。 对源磁盘的增量更改会定期复制到 Azure 中的副本磁盘。
  3. 执行进度显示在执行阶段和执行状态:

    • 执行阶段:准备、测试或完成。
    • 执行状态:正在进行、出错、操作挂起或已完成。
  4. 执行进度跨三个阶段进行跟踪:

    • 准备:为复制启用的服务器在初始复制(数据复制)正在进行时保持在准备阶段。 在此阶段,可以从服务器向下钻取边栏选项卡中可用的操作中选择“停止”、“启动”、“暂停”或“恢复”。 初始复制完成后,服务器将移动到测试阶段。

    • 测试:服务器在初始复制完成后移动到测试阶段,同时进行增量复制。 在此阶段中,可以在测试虚拟网络上运行测试迁移,然后再启动实际迁移(建议)。 还可以通过选择“完成”阶段中的相应操作来跳过测试阶段并直接开始迁移。

    • 完成:在测试迁移完成或跳过测试后,服务器将移动到“完成”阶段。 在此阶段,可以开始最终迁移(切换)。 迁移完成后,从服务器下拉菜单中的可用操作中选择“完成迁移”以清除迁移资源。

运行测试迁移

增量复制开始后,在运行到 Azure 的完整迁移之前,可以针对 VM 运行测试迁移。 我们强烈建议在迁移之前,针对每台计算机至少执行此操作一次。

  • 运行测试迁移会检查迁移是否按预期工作,而不会影响源(本地或 AVS)计算机,这些计算机仍可正常运行,并继续复制。
  • 测试迁移通过使用复制的数据创建一个 Azure VM 来模拟迁移(通常是迁移到 Azure 订阅中的非生产 VNet)。
  • 可以使用复制的测试Azure VM 来验证迁移、执行应用测试,并在完全迁移之前解决任何问题。

按如下所述执行测试迁移:

  1. 在 Azure Migrate 项目中,在 Execute>Migrations> 下选择服务器,方法是在“工作负荷”列中选择其名称。

  2. 在向下钻取菜单中的“ 测试 ”下拉列表中,选择“ 开始测试迁移”。

  3. 测试迁移中,选择Azure VM 在测试期间所在的Azure 虚拟网络(Vnet)。 建议使用非生产虚拟网络 (VNet)。

  4. 选择要与迁移 VM 上每个网络接口卡(NIC)关联的子网。

    显示在测试迁移期间选择子网的屏幕截图。

  5. 可以选择在测试迁移期间升级Windows Server OS。 若要升级,请选择“可用升级”选项。

  6. 在显示的窗格中,选择要升级到的目标 OS 版本,然后选择“应用”。 了解详细信息。 7.选择“测试迁移”后,作业将启动。 在Azure门户中监视“执行”状态下的状态。 测试迁移完成后,清理测试资源。 转到服务器,然后从“测试”下拉列表中选择“清理测试迁移”。

    “清理迁移”的屏幕截图。

    Note

    现在可以使用 SQL VM RP 注册运行 SQL Server 的服务器,以利用自动修补、自动备份和使用 SQL IaaS 代理扩展简化的许可证管理。

    • 在“执行迁移”页的>”列下选择服务器。 在“计算和网络设置”中,选中与 SQL IaaS 扩展注册关联的复选框。
    • 如果您拥有受活动软件保障或SQL Server订阅覆盖的SQL Server实例,并希望将权益应用于正在迁移的计算机,请选择适用于SQL Server的 Azure 混合权益。

迁移 VM

验证测试迁移是否按预期工作后,可以迁移源计算机。

  1. 在 Azure Migrate 项目中,在 Execute>Migrations> 下,通过在“工作负荷”列中选择服务器的名称来选择服务器。
  2. 在向下钻取菜单中的“ 完成 ”下拉列表下,选择“ 迁移”。
  3. “迁移>关闭虚拟机”中,执行计划内迁移,且不会丢失数据,请选择“ ”。
    • 默认情况下,Azure Migrate关闭源 VM,并运行按需复制,以同步自上次复制发生以来发生的任何 VM 更改。 这可以确保不会丢失数据。
    • 如果你不想要关闭 VM,请选择“否”
  4. 可以选择在迁移期间升级Windows Server OS。
  5. 若要升级,请选择“可用升级”选项。 在显示的窗格中,选择要升级到的目标 OS 版本,然后选择“应用”。 了解详细信息
  6. 如果您在目标订阅和位置中已有 VM SKU 的容量预留,请在此处为当前部署指定该容量预留。 容量预留可确保开始迁移时所需的 VM SKU 可用。 SKU 的容量预留可以位于目标订阅和位置中的任何资源组中。 了解详细信息
  7. 完成设置后,选择“ 迁移”。 服务器开始迁移作业。 在Azure通知中跟踪该任务。
  8. 作业完成后,可以从“ 迁移 ”页查看和管理服务器,该页将在 “完成 ”阶段下进行跟踪。

完成迁移

  1. 迁移完成后,打开服务器详细信息页面。 在“完成”下,选择“完成迁移”。 此操作会停止源计算机的复制,并清理 VM 的复制状态信息。
  2. 验证并解决 Azure VM 上的任何 Windows 激活问题。
  3. 执行任何迁移后的应用调整,例如更新主机名、数据库连接字符串和 Web 服务器配置。
  4. 在已迁移到 Azure 上运行的应用程序上执行最终应用程序测试和迁移验收测试。
  5. 将流量切换到已迁移Azure VM 实例。
  6. 从本地虚拟机库存中删除本地虚拟机。
  7. 从本地备份中删除本地 VM。
  8. 更新任何内部文档以显示Azure VM 的新位置和 IP 地址。

迁移后的最佳做法

后续步骤

调查 Azure 云采用框架中的 云迁移旅程