VM 的规模化迁移
本文可帮助您了解如何使用脚本来迁移大量的虚拟机 (VM)。 要规模化迁移,请使用 Azure Site Recovery。
可以在 GitHub 上的 Azure PowerShell 示例存储库下载 Site Recovery 脚本。 这些脚本可用于将 VMware、AWS、GCP VM 和物理服务器迁移到 Azure 中的托管磁盘。 如果将 VM 作为物理服务器迁移,也可以使用这些脚本迁移 Hyper-V VM。 这些脚本利用了此处记录的 Azure Site Recovery PowerShell。
当前限制
- 支持仅为目标 VM 的主 NIC 指定静态 IP 地址。
- 这些脚本不接受与 Azure 混合权益相关的输入;你需要手动更新门户中复制的 VM 的属性。
它是如何工作的?
先决条件
开始迁移前,需要执行以下步骤:
- 确保在 Azure 订阅中创建了 Site Recovery 保管库。
- 确保配置服务器和进程服务器安装在源环境中,并且保管库可以发现环境。
- 确保已创建复制策略并将其与配置服务器关联。
- 确保已将 VM 管理员帐户添加到配置服务器(将用于复制本地 VM)。
- 确保已创建 Azure 中的以下目标项目:
- 目标资源组
- 目标存储帐户(及其资源组)- 如果计划迁移到高级托管磁盘,请创建一个高级存储帐户
- 缓存存储帐户(及其资源组)-在与保管库相同的区域中创建一个标准存储帐户
- 用于故障转移的目标虚拟网络(及其资源组)
- 目标子网
- 用于测试故障转移的目标虚拟网络(及其资源组)
- 可用性集(如果需要)
- 目标网络安全组及其资源组
- 确保已确定目标 VM 的以下属性
- 目标 VM 名称
- Azure 中的目标 VM 大小(可以使用 Azure Migrate 评估来确定)
- VM 中主 NIC 的专用 IP 地址
- 从 GitHub 上的 Azure PowerShell 示例存储库下载脚本
CSV 输入文件
完成所有先决条件后,需要创建一个 CSV 文件,其中包含要迁移的每台源计算机的数据。 输入 CSV 必须具有包含输入详细信息的标题行,以及包含需要迁移的每台计算机的详细信息的行。 所有脚本都设计为在同一 CSV 文件上工作。 脚本文件夹中提供了一个示例 CSV 模板以供参考。
脚本执行
CSV 准备就绪后,可以通过以下步骤来执行本地 VM 的迁移:
步骤编号 | 脚本名称 | 说明 |
---|---|---|
1 | asr_startmigration.ps1 | 为 csv 中列出的所有 VM 启用复制,该脚本将创建一个 CSV 输出,其中包含每个 VM 的作业详细信息 |
2 | asr_replicationstatus.ps1 | 检查复制状态,该脚本会创建一个包含各 VM 的状态的 csv |
3 | asr_updateproperties.ps1 | 复制/保护 VM 后,使用此脚本更新 VM 的目标属性(计算和网络属性) |
4 | asr_propertiescheck.ps1 | 验证属性是否已正确更新 |
5 | asr_testmigration.ps1 | 启动 csv 中列出的 VM 的测试故障转移,该脚本将创建一个 CSV 输出,其中包含每个 VM 的作业详细信息 |
6 | asr_cleanuptestmigration.ps1 | 手动验证已执行测试故障转移的 VM 后,可以使用此脚本清理测试故障转移 VM |
7 | asr_migration.ps1 | 对 csv 中列出的 VM 执行计划外的故障转移,该脚本将创建一个 CSV 输出,其中包含每个 VM 的作业详细信息。 为实现应用程序一致性,在触发故障转移之前脚本不会关闭本地 VM,建议在执行脚本之前手动关闭 VM。 |
8 | asr_completemigration.ps1 | 在 VM 上执行提交操作并删除 Azure Site Recovery 实体 |
9 | asr_postmigration.ps1 | 如果计划在故障转移后将网络安全组分配给 NIC,可以使用此脚本实现该操作。 它将 NSG 分配给目标 VM 中的任何一个 NIC。 |
如何迁移到托管磁盘?
默认情况下,该脚本会将 VM 迁移到 Azure 中的托管磁盘。 如果提供的目标存储帐户是高级存储帐户,则迁移后会创建高级托管磁盘。 缓存存储帐户仍可以是标准帐户。 如果目标存储帐户是标准存储帐户,则迁移后会创建标准磁盘。
后续步骤
详细了解如何使用 Azure Site Recovery 将服务器迁移到 Azure