本文介绍如何使用 Azure Migrate:服务器迁移工具将本地 VMware VM 迁移到 Azure,以及无代理迁移。 还可以使用基于代理的迁移来迁移 VMware VM。 比较方法。
本教程是一系列中的第三个教程,演示如何评估和迁移 VMware VM 到Azure。
Note
教程中演示了方案的最简单部署路径,使你能够快速设置概念证明。 教程尽可能使用默认选项,不会演示所有可能的设置和路径。
本教程介绍如何执行下列操作:
- 添加Azure Migrate:服务器迁移工具。
- 发现要迁移的虚拟机 (VM)。
- 开始复制 VM。
- 运行测试迁移,确保一切按预期正常进行。
- 运行完整的 VM 迁移。
如果没有 Azure 订阅,请在开始前创建 试用订阅。
Prerequisites
开始学习本教程之前,应做好以下准备:
完成第一个教程以准备Azure和 VMware 进行迁移。
建议先完成第二个教程来评估 VMware VM,然后再将其迁移到Azure,但无需。
转到已创建的项目或创建新项目
验证Azure帐户的权限 - Azure 帐户需要创建 VM 的权限,并写入Azure托管磁盘。
有关创建项目并运行发现、评估和迁移所需的 Azure Migrate 内置角色和权限详细信息,请参阅 准备适用于 Azure Migrate 的 Azure 帐户。
Note
如果计划升级Windows操作系统,Azure Migrate可能会下载 Windows SetupDiag,了解升级失败时的错误详细信息。 确保迁移后在Azure中创建的 VM 有权访问 SetupDiag。 如果无法访问 SetupDiag,可能无法获取详细的 OS 升级失败错误代码,但升级仍可以继续。
设置Azure Migrate设备
Azure Migrate:服务器迁移工具使用一个轻量级的 VMware VM 设备进行 VMware VM 的发现、评估和无代理迁移。 如果您遵循 评估教程,那么您已经设置好设备了。 如果尚未这样做,请使用以下方法之一立即进行设置:
- 脚本:使用 PowerShell 安装程序脚本在 VMware VM 或物理计算机上进行设置。
创建设备后,请检查它是否可以连接到Azure Migrate:服务器评估,首次配置它,并将其注册到Azure Migrate项目。
复制虚拟机
设置设备并完成发现后,可以开始将 VMware VM 复制到Azure。
- 最多可以同时运行 500 个复制。
- 在门户中,一次最多可选择迁移 10 个 VM。 若要迁移更多计算机,请将它们 10 个一批地添加到组中。
Note
Azure Migrate 不支持对包含非 ASCII 字符的 VMDK 的 VMware VM 进行无代理迁移。
请按如下所述启用复制:
在 Azure Migrate 项目中,>Windows、Linux 和 SQL Server>Azure Migrate:服务器迁移,选择 Replicate。
在“复制”>“基本信息”>“计算机是否已虚拟化?”中,选择“是,使用 VMware vSphere”。
在 本地设备 中,选择您设置的 Azure Migrate 设备的名称,然后点击 >确定。
在“虚拟机”中,选择要复制的计算机。 如果要使用来自评估的 VM 大小和磁盘类型,请在“是否从 Azure Migrate 评估中导入迁移设置?”选项下选择是,然后选择 VM 组和评估名称。 如果不使用评估设置,请选择 “否”。 Azure Migrate支持迁移到受信任启动虚拟机。 默认情况下,它将符合条件的 VM 迁移为 TVM。 这些 VM 提供增强的安全功能,例如安全启动和虚拟 TPM,无需额外付费。 建议在适用的情况下使用它们。
在“虚拟机”中,选择要迁移的 VM。 然后选择“下一步: 目标设置”。
在“目标设置”中,选择订阅、目标区域和存储帐户。
Note
启动 VM 的第一次复制后,无法更改目标区域和存储帐户。 下拉列表中选择的默认选项将用于创建新的存储帐户。 如果未选择此选项,将在启用复制的最后一步中创建存储帐户。
在 Virtual Network 中,选择迁移后Azure VM 加入的Azure VNet/子网。
在“可用性选项”中,选择:
- 可用性区域,将迁移的计算机固定到区域中的特定可用性区域。 使用此选项可跨Availability Zones分发构成多节点应用程序层的服务器。 如果选择此选项,则需要指定要用于“计算”选项卡中每个所选计算机的可用性区域。仅当为迁移选择的目标区域支持Availability Zones时,此选项才可用
- 可用性集,将迁移的计算机放入可用性集。 若要使用此选项,所选的目标资源组必须具有一个或多个可用性集。 支持具有邻近放置组的可用组集。
- 如果不需要为迁移的计算机使用其中任何可用性配置,则选择“无需基础结构冗余”选项。
在“磁盘加密类型”中,选择以下类型:
- 使用平台管理的密钥进行静态加密
- 使用客户管理的密钥进行静态加密
- 通过平台管理的密钥和客户管理的密钥进行双重加密
Note
若要使用 CMK 复制 VM,需要在目标资源组下创建磁盘加密集。 磁盘加密集对象将 Managed Disks 映射到包含用于服务器端加密 (SSE) 的客户管理密钥 (CMK) 的 Key Vault。
在 Azure Hybrid Benefit:
如果不想应用Azure Hybrid Benefit,请选择 No。 然后选择下一步。
如果您拥有包含活动软件保障或 Windows Server 订阅的 Windows Server 计算机,并且想要将该权益应用于您正在迁移的计算机,请选择Yes。 然后选择下一步。
在“计算”中,查看 VM 名称、大小、OS 磁盘类型和可用性配置(如果在上一步中选定)。 VM 必须符合 Azure 要求。
- VM 大小:如果你正在使用评估建议,则 VM 大小下拉列表会显示建议大小。 否则,Azure Migrate 将根据 Azure 订阅中最近匹配的尺寸选择大小。 或者,在 Azure VM 大小 中选择手动大小。
- OS 磁盘:为 VM 指定 OS(启动)磁盘。 OS 磁盘是包含操作系统引导加载程序和安装程序的磁盘。
- 可用性区域:指定要使用的可用性区域。
- 可用性集:指定要使用的可用性集。
- 容量预留:如果您在目标订阅和位置中已有适用于该 VM SKU 的容量预留,请在此指定用于此部署。 容量预留可确保开始迁移时所需的 VM SKU 可用。 现在可以关联预留,也可以跳过此步骤,并在迁移过程中稍后对其进行配置。 SKU 的容量预留可以位于目标订阅和位置中的任何资源组中。 了解详细信息。
Note
如果要为一组虚拟机选择其他可用性选项,请转到步骤 1,在开始为一组虚拟机执行复制后,通过选择其他可用性选项来重复这些步骤。
在 Disks 中,指示 VM 磁盘是否应复制到Azure,并在Azure中指定磁盘类型(高级 v2、超级磁盘、标准 SSD、标准 HDD 或高级托管磁盘)。 然后选择下一步。
Note
若要优化成本和提高性能,现在可以迁移到高级 SSD v2 作为数据磁盘使用。
在“标记”中,选择向虚拟机、磁盘和 NIC 添加标记。
在“审查并开始复制”中,审查设置,然后选择“复制”以启动服务器的初始复制。
Note
如果存在Azure连接问题,或者设备服务已关闭 90 分钟以上,则复制服务器的活动复制周期将重置为 0%,并且相应的周期从头开始运行。
Note
在复制开始之前,随时可以更新复制设置(在“管理”>“复制计算机”中 )。 复制开始之后无法更改设置。
跟踪和监视
在门户通知中跟踪作业状态。
通过选择 Azure VM 旁边的数值来监视 Azure Migrate:服务器迁移 中的复制状态。
复制按如下方式发生:
- 启动复制作业成功完成后,机器开始其初始复制到 Azure。
- 在初始复制期间,会创建一个 VM 快照。 快照中的磁盘数据将复制到 Azure 托管的副本磁盘。
- 初始复制完成后,增量复制将会开始。 对源磁盘的增量更改会定期复制到Azure中的副本磁盘。
- 启动复制作业成功完成后,机器开始其初始复制到 Azure。
使用 PowerShell 查看 剩余时间,在 Azure Migrate 中的所有服务器迁移阶段。 这有助于准确跟踪复制进度和计划切换。 可以使用 PowerShell 或Windows PowerShell。
使用管理员权限打开 Powershell 控制台,在Azure中 Sing 并运行以下命令以监视所需的服务器的迁移状态。
Get-AzMigrateServerMigrationStatus -ProjectName "<your-project-name>" -ResourceGroupName "<your-resource-group>" -MachineName "<your-server-name>"将
your-project-name、your-resource-group和your-server-name替换为实际Azure Migrate项目、资源组和服务器名称。运行此命令并获取以下输出:
输出显示服务器复制状态、磁盘进度、剩余时间、上传速度和数据存储详细信息。
使用标志运行步骤 5 中的
Expedite命令。 这会检索设备操作参数和推荐操作的优先级列表,以帮助减少指定服务器的剩余迁移时间。Get-AzMigrateServerMigrationStatus -ProjectName "<your-project-name>" -ResourceGroupName "<your-resource-group>" -MachineName "<your-server-name>" -Expedite将返回以下输出:
可以运行命令,而无需
-MachineName查看项目中所有服务器的迁移状态和剩余时间。 例如:Get-AzMigrateServerMigrationStatus -ProjectName "<your-project-name>" -ResourceGroupName "<your-resource-group>"将
your-project-name和your-resource-group替换为实际Azure Migrate项目和资源组名称。运行此命令并获取以下输出:
如果复制或切换出现问题,该
-Health标志会显示 错误、可能的原因和建议措施,用于排查迁移问题。Get-AzMigrateServerMigrationStatus -ProjectName "<your-project-name>" -ResourceGroupName "<your-resource-group>" -MachineName "<your-server-name>" -Health运行此命令并获取以下输出:
还可以通过仅使用
-ApplianceName来查看连接到该设备的所有服务器的迁移状态、剩余时间和运行状况详细信息。Get-AzMigrateServerMigrationStatus -ProjectName "<your-project-name>" -ResourceGroupName "<your-resource-group>" -ApplianceName "<your-appliance-将
your-project-name、your-resource-group和your-appliance-name替换为来自 Azure Migrate 设置的实际值。运行此命令以获取以下输出:
Note
可以在任何Windows计算机上使用 PowerShell 或Windows PowerShell。 只要计算机有权访问Azure Migrate项目,计算机就指任何Windows电脑,而不是设备或服务器。
运行测试迁移
增量复制开始时,可以在运行完整迁移到Azure之前,为 VM 运行测试迁移。 我们强烈建议在迁移之前,针对每台计算机至少执行此操作一次。
- 运行测试迁移检查迁移是否按预期工作,同时不会影响源(本地)计算机的运行状态,它们将继续正常运行和复制。
- 测试迁移通过使用复制的数据创建 Azure VM,通常将其迁移到 Azure 订阅中的非生产 VNet。
- 可以使用复制的测试Azure VM 来验证迁移、执行应用测试,并在完全迁移之前解决任何问题。
按如下所述执行测试迁移:
在 Migration 目标>Windows、Linux 和 SQL Server>Azure Migrate:服务器迁移 中,选择 Azure VM 旁边的数值。
右键单击要测试的 VM,然后选择“测试迁移”。
在 测试迁移中,选择测试期间Azure VM 所在的Azure VNet。 建议使用非生产虚拟网络 (VNet)。
选择要将已迁移 VM 的每个网络接口卡(NIC)关联到的子网。
可以选择在测试迁移期间升级Windows Server OS。 若要升级,请选择“可用升级”选项。 在显示的窗格中,选择要升级到的目标 OS 版本,然后选择“应用”。 了解详细信息。
“测试迁移”作业随即启动。 在门户通知中监视该作业。
迁移完成后,在 Azure 门户中的 Virtual Machines 中查看迁移的 Azure VM。 计算机名称带有 -Test 后缀。
测试完成后,右键单击 复制计算机中的 Azure VM,然后选择 清理测试迁移。
Note
现在可以使用 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:服务器迁移,选择 Azure VM旁边的数值。
在“复制计算机”中,右键单击该 VM >“迁移”。
在“迁移”>“关闭虚拟机并执行计划迁移(不会丢失任何数据)”中,选择“是”>“确定”。
- 默认情况下,Azure Migrate关闭源(本地)VM,并运行按需复制以同步自上次复制发生以来发生的任何 VM 更改。 这可以确保不会丢失数据。
- 如果你不想要关闭 VM,请选择“否”
可以选择在迁移期间升级Windows Server OS。 若要升级,请选择“可用升级”选项。 在显示的窗格中,选择要升级到的目标 OS 版本,然后选择“应用”。 了解详细信息。
如果您在目标订阅和位置中已有 VM SKU 的容量预留,请在此处为当前部署指定该容量预留。 容量预留可确保开始迁移时所需的 VM SKU 可用。 SKU 的容量预留可以位于目标订阅和位置中的任何资源组中。 了解详细信息。
随即会针对该 VM 启动一个迁移作业。 在Azure通知中跟踪任务。
作业完成后,可以从 Virtual Machines 页查看和管理 VM。
完成迁移
完成迁移后,右键单击 VM >“完成迁移”。 这会停止源(本地)计算机的复制,并清理 VM 的复制状态信息。
迁移期间,我们会自动为 Windows VM 和 Linux 安装 VM 代理。
执行任何迁移后的应用调整,例如更新主机名、数据库连接字符串和 Web 服务器配置。
对已迁移到Azure中运行的应用程序执行最终应用程序和迁移验收测试。
将流量切换到已迁移的 Azure VM 实例。
从本地 VM 清单中删除源(本地)VM。
从本地备份中删除源(本地)VM。
更新任何内部文档以显示Azure VM 的新位置和 IP 地址。
迁移后的最佳做法
为了提高复原能力:
为了提高性能:
- 默认情况下,创建的数据磁盘的主机缓存设置为“无”。 查看数据磁盘缓存并根据工作负载需求进行调整。 了解详细信息。
为了提高安全性:
- 使用 Azure Update Manager 管理Windows和 Linux 计算机上的更新。
- 使用网络安全组限制网络流量至管理终结点。
- 部署
Azure Disk Encryption ,帮助保护磁盘的安全,并防止数据被盗和未经授权的访问。 - 详细了解 保护 IaaS 资源,并访问 Microsoft Defender for Cloud。
用于监控和管理:
请考虑部署 Azure Cost Management 以监视资源使用情况和支出。
后续步骤
调查 Azure Cloud Adoption Framework 中的 云迁移旅程。