将 Hyper-V VM 迁移到 Azure
本文介绍如何使用 Azure Migrate 和服务器迁移工具将本地 Hyper-V 虚拟机 (VM) 迁移到 Azure。
本教程是教程系列中的第三篇,演示如何评估计算机并将其迁移到 Azure。
注意
教程中演示了方案的最简单部署路径,使你能够快速设置概念证明。 教程尽可能使用默认选项,不会演示所有可能的设置和路径。
本教程介绍如何执行下列操作:
- 添加 Azure Migrate : 服务器迁移工具。
- 发现要迁移的 VM。
- 开始复制 VM。
- 运行测试迁移,确保一切按预期正常进行。
- 运行完整的 VM 迁移。
如果没有 Azure 订阅,请在开始前创建一个试用版订阅。
先决条件
开始学习本教程之前,应做好以下准备:
- 查看 Hyper-V 迁移体系结构。
- 查看 Hyper-V 主机迁移要求,以及迁移 VM 时 Hyper-V 主机和群集需要访问的 Azure URL。
- 查看要迁移到 Azure 的 Hyper-V VM 要求。
- 建议在迁移到 Azure 之前评估 Hyper-V VM,但不强制要求这样做。
- 转到已创建的项目或创建新项目。
- 验证 Azure 帐户的权限。 你的 Azure 帐户需要具有相应权限才能创建 VM、在 Azure 托管磁盘中写入数据,以及管理与 Azure Migrate 项目关联的恢复服务保管库的故障转移操作。
注意
如果你计划升级 Windows 操作系统 (OS),Azure Migrate 和 Modernize 可能会下载 Windows SetupDiag 以获取错误详细信息,以防升级失败。 确保迁移后在 Azure 中创建的 VM 有权访问 SetupDiag。 如果无法访问 SetupDiag,则可能无法获取详细的 OS 升级失败错误代码,但升级仍可以继续。
下载提供程序
为迁移 Hyper-V VM,“Azure Migrate: 服务器迁移”工具会在 Hyper-V 主机或群集节点上安装软件提供程序(Microsoft Azure Site Recovery 提供程序和 Microsoft Azure 恢复服务代理)。 Azure Migrate 设备不用于 Hyper-V 迁移。
在 Azure Migrate 项目中,选择“Windows、Linux 和 SQL Server”>“Azure Migrate: 服务器迁移”>“发现”。
在“发现计算机”>“计算机是否已虚拟化?”中,选择“是,使用 Hyper-V”。
在“目标区域”中,选择要将计算机迁移到的 Azure 区域。
选择“确认迁移的目标区域为 <区域名称>”。
选择“创建资源”。 此步骤会在后台创建一个恢复服务保管库。
- 如果已设置使用 Azure Migrate 和服务器迁移工具进行迁移,则不会显示此选项,因为之前已设置了资源。
- 选择此按钮后,无法更改此项目的目标区域。
- 所有后续迁移的目标都是此区域。
在“准备 Hyper-V 主机服务器”中,下载 Hyper-V 复制提供程序和注册密钥文件。
- 需要使用该注册密钥将 Hyper-V 主机注册到 Azure Migrate 和服务器迁移工具。
- 生成的密钥有效期为 5 天。
将提供程序安装文件和注册密钥文件复制到运行要复制的 VM 的每个 Hyper-V 主机(或群集节点)。
安装并注册提供程序
若要安装和注册提供程序,请通过 UI 或命令执行以下步骤。
在每个主机上运行提供程序安装文件:
- 选择任务栏中的文件图标,以打开安装程序文件和注册密钥下载到的文件夹。
- 选择 AzureSiteRecoveryProvider.exe 文件。
- 在提供程序安装向导中,确保选择“启用(推荐)”,然后选择“下一步”。
- 选择“安装”以接受默认安装文件夹。
- 选择“注册”以在恢复服务保管库中注册此服务器。
- 选择“浏览”。
- 找到注册密钥,然后选择“打开”。
- 选择下一步。
- 确保选择“在不使用代理服务器的情况下直接连接到 Azure Site Recovery”,然后选择“下一步”。
- 选择“完成”。
在主机上安装提供程序后,转到 Azure 门户,然后在“发现计算机”中选择“完成注册”。
完成注册后,最长可能需要经过 15 分钟,已发现的 VM 才会出现在“Azure Migrate : 服务器迁移”磁贴中。 随着 VM 的发现,“已发现的服务器”计数会不断增大。
复制 Hyper-V VM
完成发现后,可以开始将 Hyper-V VM 复制到 Azure。
注意
最多可以同时复制 10 台计算机。 如果需要复制更多,则可以每批 10 台同时复制它们。
在 Azure Migrate 项目中,选择“Windows、Linux 和 SQL Server”>“Azure Migrate: 服务器迁移”>“复制”。
在“复制”>“源设置”>“你的计算机是否已虚拟化”中,选择“是,使用 Hyper-V”。 然后选择“下一步: 虚拟机”。
在“虚拟机”中,选择要复制的计算机。
如果已针对 VM 运行评估,则可以应用评估结果中提供的 VM 大小和磁盘类型(高级/标准)建议。 为完成此步骤,请在“从 Azure Migrate 评估导入迁移设置?”中选择“是”。
如果你未运行评估,或者不想要使用评估设置,请选择“否”。
如果已选择使用评估,请选择 VM 组和评估名称。
在“虚拟机”中,根据需要搜索 VM,并检查要迁移的每个 VM。 然后选择“下一步: 目标设置”。
在“目标设置”中,选择要迁移到的目标区域、订阅,以及迁移之后 Azure VM 所在的资源组。
在“复制存储帐户”中,选择将在 Azure 中存储复制数据的 Azure 存储帐户。
在“虚拟网络”中,选择 Azure VM 在迁移之后要加入到的 Azure 虚拟网络/子网。
在“可用性选项”中,选择:
- 可用性区域:将迁移的计算机固定到区域中的特定可用性区域。 使用此选项可跨可用性区域分配形成多节点应用程序层的服务器。 如果选择此选项,则需要在“计算”选项卡中指定用于每个选定计算机的可用性区域。仅当为迁移选择的目标区域支持可用性区域时,此选项才可用。
- 可用性集:将迁移的计算机放入可用性集。 若要使用此选项,所选的目标资源组必须具有一个或多个可用性集。
- 无需基础结构冗余:如果不需要为迁移的计算机使用其中任何可用性配置,则选择此选项。
在“Azure 混合权益”中:
- 如果你不想要应用 Azure 混合权益,请选择“否”。 然后,选择“下一步”。
- 如果 Windows Server 计算机享有有效软件保障或 Windows Server 订阅的权益,并且你想要将此权益应用到所要迁移的计算机,请选择“是”。 然后,选择“下一步”。
在“计算”中,查看 VM 名称、大小、OS 磁盘类型和可用性配置(如果在上一步中选定)。 VM 必须符合 Azure 要求。
- VM 大小:如果你正在使用评估建议,则 VM 大小下拉列表将包含建议的大小。 否则,Azure Migrate 和 Modernize 会根据 Azure 订阅中最接近的匹配项选择大小。 或者,请在“Azure VM 大小”中的手动选择一个大小。
- OS 磁盘:为 VM 指定 OS(启动)磁盘。 OS 磁盘是包含操作系统引导加载程序和安装程序的磁盘。
- 可用性集:如果迁移后 VM 应位于某个 Azure 可用性集中,请指定该集。 该集必须位于为迁移指定的目标资源组中。
在“磁盘”中,指定需要复制到 Azure 的 VM 磁盘。 然后,选择“下一步”。
- 可以从复制中排除磁盘。
- 如果你排除了磁盘,则在迁移后它们将不会出现在 Azure VM 中。
在“标记”中,选择向 VM、磁盘和 NIC 添加标记。
在“检查并开始复制”中检查设置,然后选择“复制”启动服务器的初始复制。
注意
在复制开始之前,随时可以在“管理”>“复制的计算机”中更新复制设置。 开始复制后无法更改设置。
首次预配
如果这是你要在 Azure Migrate 项目中复制的第一个 VM,Azure Migrate 和服务器迁移工具会在项目所在的同一资源组中自动预配这些资源。
- 缓存存储帐户:安装在 Hyper-V 主机上的 Site Recovery 提供程序软件将为复制配置的 VM 的复制数据上传到订阅中的存储帐户(称为缓存存储帐户,或日志存储帐户)。 然后,Azure Migrate 和 Modernize 服务会将已上传的复制数据从存储帐户复制到与 VM 相对应的副本托管磁盘。 在为 VM 配置复制时,需要指定缓存存储帐户。 在项目中首次配置复制时,Azure Migrate 门户会自动为 Azure Migrate 项目创建一个。
跟踪和监视
- 选择“复制”会启动一个“开始复制”作业。
- “开始复制”作业成功完成后,计算机将开始初始复制到 Azure。
- 初始复制完成后,增量复制将会开始。 对本地磁盘所做的增量更改会定期复制到 Azure。
可以在门户通知中跟踪作业状态。
可以通过选择“Azure Migrate 和服务器迁移”中的“已复制服务器”来监视复制状态。
运行测试迁移
增量复制开始后,在开始以 Azure 为目标的完整迁移之前,可以针对 VM 运行完整迁移。 我们强烈建议在迁移之前,为每个计算机至少执行此步骤一次。
- 运行测试迁移可以检查迁移是否按预期进行,而不会影响本地计算机,它们仍可保持正常运行并继续复制。
- 测试迁移通过使用复制的数据创建 Azure VM 来模拟迁移。 (测试通常会迁移到 Azure 订阅中的非生产 Azure 虚拟网络。)
- 可以使用复制的测试 Azure VM 来验证迁移、执行应用测试,并解决完整迁移之前出现的任何问题。
若要执行测试迁移,请执行以下操作:
在“迁移目标”中,选择“Windows、Linux 和 SQL Server”>“Azure Migrate: 服务器迁移”,然后选择“复制”下的“已复制服务器”。
在“复制计算机”选项卡中,右键单击要测试的 VM,然后选择“测试迁移”。
在“测试迁移”中,选择 Azure VM 在迁移后所在的 Azure 虚拟网络。 建议使用非生产虚拟网络。
可以在测试迁移期间升级 Windows Server OS。 对于 Hyper-V VM,尚不支持自动检测 OS。 若要升级,请选择“检查升级”选项。 在出现的窗格中,选择当前 OS 版本和要升级到的目标版本。 如果目标版本可用,会对其进行相应的处理。 了解详细信息。
“测试迁移”作业随即启动。 在门户通知中监视该作业。
迁移完成后,在 Azure 门户上的“虚拟机”中查看已迁移的 Azure VM。 计算机名称带有 -Test 后缀。
测试完成后,在“复制”中右键单击该 Azure VM,然后选择“清理测试迁移”。
注意
现在可以使用 SQL VM RP 注册运行 SQL Server 的服务器,以利用自动修补、自动备份和使用 SQL IaaS 代理扩展简化的许可证管理。
- 选择“管理”>“复制”>“包含 SQL Server 的计算机”>“计算和网络”,然后选择“是”,注册 SQL VM RP。
- 如果你的 SQL Server 实例享有有效软件保障或 SQL Server 订阅的权益,并且你需要将此权益应用到所要迁移的计算机,请选择“面向 SQL Server 的 Azure 混合权益”。
迁移 VM
确认测试迁移按预期方式进行后,可以迁移本地计算机。
在 Azure Migrate 项目中,选择“Windows、Linux 和 SQL Server”>“Azure Migrate: 服务器迁移”,然后选择“复制”下的“已复制服务器”。
在“复制计算机”选项卡中,右键单击要测试的 VM,然后选择“迁移”。
在“迁移”>“关闭虚拟机并执行计划迁移(不会丢失任何数据)”中,选择“是”>“确定”。
- 默认情况下,Azure Migrate 和 Modernize 将关闭本地 VM,并运行按需复制,以同步自上次复制发生以来发生的任何 VM 更改。 此操作可以确保不会丢失数据。
- 如果你不想要关闭 VM,请选择“否”。
可以在迁移期间升级 Windows Server OS。 对于 Hyper-V VM,尚不支持自动检测 OS。 若要升级,请选择“检查升级”选项。 在出现的窗格中,选择当前 OS 版本和要升级到的目标版本。 如果目标版本可用,会对其进行相应的处理。 了解详细信息。
随即会针对该 VM 启动一个迁移作业。 在 Azure 通知中跟踪该作业。
该作业完成后,可以从“虚拟机”页查看和管理该 VM。
完成迁移
- 完成迁移后,右键单击 VM 并选择“停止复制”。 此操作:
- 停止本地计算机的复制。
- 从“Azure Migrate : 服务器迁移”工具中的“已复制服务器”计数中删除该计算机。
- 清除 VM 的复制状态信息。
- 验证并排查 Azure VM 上的所有 Windows 激活问题。
- 执行任何迁移后的应用调整,例如更新主机名、数据库连接字符串和 Web 服务器配置。
- 对 Azure 中当前运行的迁移应用程序执行最终的应用程序和迁移验收测试。
- 将流量交接到已迁移的 Azure VM 实例。
- 从本地 VM 清单中删除本地 VM。
- 从本地备份中删除本地 VM。
- 更新所有内部文档,以显示新的位置和 Azure VM 的 IP 地址。
迁移后的最佳做法
- 为增强恢复能力,请采取以下措施:
- 为提高安全性,请采取以下措施:
- 使用 Microsoft Defender for Cloud - 即时管理锁定和限制入站流量访问。
- 使用 Azure 更新管理器管理和治理 Windows 和 Linux 计算机上的更新。
- 使用网络安全组限制流入管理终结点的网络流量。
- 部署 Azure 磁盘加密以帮助保护磁盘,并保护数据以防被盗和未经授权的访问。
- 详细了解保护 IaaS 资源和 Microsoft Defender for Cloud。
- 为了便于监视和管理,请执行以下操作:
- 考虑部署 Microsoft 成本管理以监视资源使用率和支出。
后续步骤
在 Azure 云采用框架中调查云迁移旅程。