你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

部署 Azure 存储移动程序代理

Azure 存储移动程序服务利用代理来执行在服务中所配置的迁移作业。 代理是在虚拟化主机上运行的基于虚拟机的迁移设备。 理想情况下,虚拟化主机尽可能靠近要迁移的源存储。 存储移动程序可以支持多个代理。

由于代理本质上是迁移设备,因此可通过本地代理管理 shell 与其交互。 Shell 会限制在此计算机上执行的操作,但网络配置和故障排除任务均可访问。

在迁移中使用代理通过 Azure 进行管理。 Azure PowerShell 和 CLI 均受支持,并且 Azure 门户中提供了图形交互。 代理作为与新的 Windows Hyper-V 或 VMware 虚拟机 (VM) 兼容的磁盘映像提供。

本文将指导你完成成功部署存储移动程序代理 VM 所需的步骤。

先决条件

  1. 以下存储移动器终结点需要有权访问 https 流量
  • mcr.microsoft.com
  • <region>.agentgateway.prd.azsm.azure.com
  • evhns-sm-ur-prd-<region>.servicebus.windows.net
  1. 支持在其中运行代理 VM 的 Windows Hyper-V 或 VMware 主机。
    有关代理 VM 的资源要求的详细信息,请参阅本文中的建议使用的计算和内存资源部分。

注意

目前,Windows Hyper-V 和 VMware 是唯一受支持的代理 VM 虚拟化环境。 其他虚拟化环境尚未进行测试,不受支持。

确定 VM 所需的资源

与每个 VM 一样,代理需要主机上的可用计算、内存、网络和存储空间资源。 尽管总体数据大小可能会影响完成迁移所需的时间,但通常是文件和文件夹数量决定了资源需求。

网络资源

代理需要不受限制的 Internet 连接。

尽管没有一个网络配置选项适用于每个环境,但是最简单的配置会涉及部署外部虚拟交换机。 外部交换机连接到物理适配器,并允许主机操作系统 (OS) 与所有虚拟机 (VM) 共享其连接。 此交换机允许在物理网络、管理操作系统和虚拟机上的虚拟适配器之间进行通信。 此方法对于测试环境可能是可以接受的,但可能不足以用于生产服务器。

创建交换机后,请确保管理 VM 和代理 VM 位于同一交换机上。 在 WAN 链接防火墙上,必须打开出站 TCP 端口 443。 请记住,更改网络配置时会导致连接中断。

可以在 Windows Server 文档的为 Hyper-V 虚拟机创建虚拟交换机中获取帮助。 有关为 VMware 托管的 VM 创建虚拟交换机的详细指南,请参阅 VMware 支持网站。

迁移规模* 内存 (RAM) 虚拟处理器计数核心(2 GHz/分钟)
100 万项 8 GiB 4 个虚拟核心
1000 万项 8 GiB 4 个虚拟核心
3000 万项 12 GiB 6 个虚拟核心
5000 万项 16 GiB 8 个虚拟核心
1 亿项 16 GiB 8 个虚拟核心

项数是指源中的文件和文件夹总数。

重要

虽然低于最低规格的代理 VM 可能适用于迁移,但可能无法以最佳方式运行且不受支持。

性能目标一文包含不同的源命名空间和 VM 资源的测试结果。

本地存储容量

代理映像至少需要 20 GiB 的本地存储。 如果在迁移期间缓存了大量小型文件,则所需内存可能会增加。

下载代理 VM 映像

代理 VM 的映像作为 zip 文件托管在 Microsoft 下载中心。 在 https://aka.ms/StorageMover/agent 下载该文件并将代理虚拟硬盘 (VHD) 映像提取到虚拟化主机。

创建代理 VM

以下步骤介绍了使用 Microsoft Hyper-V 创建 VM 的过程。 有关创建基于 VMware 的 VM 的详细指南,请参阅 VMware 支持网站。

  1. 创建新的 VM 以托管代理。 打开“Hyper-V 管理器”。 在“操作”窗格中,选择“新建”和“虚拟机…”,启动“新建虚拟机向导”

    显示如何在 Hyper-V 管理器中启动“新建虚拟机向导”的图像。

  2. 在“指定名称和位置”窗格中,指定代理 VM 的“名称”和“位置”字段的值。 位置应与存储 VHD 的文件夹匹配(如果可能)。 选择下一步

    显示“新建虚拟机向导”中“名称”和“位置”字段位置的图像。

  3. 在“指定代系”窗格中,选择选项“第 1 代”

    显示“新建虚拟机向导”中 VM 代系选项位置的图像。

    重要

    仅支持第 1 代 VM。 此 Linux 映像不会作为第 2 代 VM 启动

  4. 如果尚未选择,请确定你的 VM 所需的内存量。 在“分配内存”窗格中输入此内存量,注意需要以 MiB 为单位输入值。 1 GiB = 1024 MiB。 可以使用“动态内存”功能

    显示“新建虚拟机向导”中“启动内存”字段位置的图像。

  5. 在“配置网络”窗格中,选择“连接”下拉列表。 从列表中,选择为代理提供 Internet 连接的虚拟交换机,然后选择“下一步”。 有关详细信息,请参阅 Hyper-V 虚拟网络文档

    显示“新建虚拟机向导”中网络“连接”字段位置的图像。

  6. 在“连接虚拟硬盘”窗格中,选择“使用现有虚拟硬盘”选项。 在“位置”字段中,选择“浏览”,导航到在前面的步骤中提取的 VHD 文件。 选择下一步

    显示“新建虚拟机向导”中虚拟硬盘“连接”字段位置的图像。

  7. 在“摘要”窗格中,选择“完成”以创建代理 VM

    显示“新建虚拟机向导”的“摘要”窗格中用户分配的值的图像。

  8. 成功创建新代理后,它将显示在 Hyper-V 管理器的“虚拟机”窗格中

    显示在“新建虚拟机向导”中部署的代理 VM 的图像。

更改默认密码

代理提供有默认用户帐户和密码。 连接到新创建的代理,并在部署并启动代理后立即更改默认密码。

在代理所在的同一子网上的计算机中运行 ssh 命令:

ssh <AgentIpAddress> -l admin

重要

新部署的存储移动程序代理具有默认密码:
本地用户:admin
默认密码:admin

首次连接到新部署的代理后,系统会提示你立即更改默认密码。 请记下新密码,以后没有找回密码的途径。 如果丢失密码,你将无法进入管理 shell。 云管理不需要此本地管理员密码。 如果代理以前已注册,你仍可将其用于迁移作业。 代理是可以轻易弃用的。 除当前正在执行的迁移作业之外,它们几乎没有什么价值。 你随时可以部署新的代理,并改用新代理来运行下一个迁移作业。

带宽限制

在将新计算机部署到网络之前,请花时间考虑它使用的带宽量。 Azure 存储移动程序代理使用本地网络以及广域网 (WAN) 链接上的 Azure 存储服务与源共享通信。 在这两种情况下,代理都默认用于充分利用网络带宽。 但是,现在可以为存储移动程序代理设置带宽管理计划

或者,可以创建具有互联网连接的本地虚拟网络并配置服务质量 (QoS) 设置。 此方法让你可以通过虚拟网络公开代理,并根据需要在本地配置代理上未经身份验证的网络代理服务器。

停用代理

不再需要特定的存储移动程序代理时,可以停用该代理。 停用过程分为两个步骤:

  1. 从存储移动程序资源中取消注册代理。
  2. 停止虚拟化主机上的代理 VM,然后将其删除。

停用代理从取消注册代理开始。 可使用三个选项启动取消注册过程:

可以使用代理 VM 的管理 shell 取消注册代理。 代理必须连接到服务,并在本地和通过 Azure 门户以及 Azure PowerShell 或 Azure CLI 联机显示。

在代理所在的同一子网上的计算机中运行 ssh 命令:

ssh <AgentIpAddress> -l admin

重要

新部署的存储移动程序代理具有默认密码:
本地用户:admin
默认密码:admin

首次连接到新部署的代理后,系统会提示你立即更改默认密码。 请记下新密码,以后没有找回密码的途径。 如果丢失密码,你将无法进入管理 shell。 云管理不需要此本地管理员密码。 如果代理以前已注册,你仍可将其用于迁移作业。 代理是可以轻易弃用的。 除当前正在执行的迁移作业之外,它们几乎没有什么价值。 你随时可以部署新的代理,并改用新代理来运行下一个迁移作业。

1) System configuration
2) Network configuration
3) Service and job status
4) Unregister
5) Collect support bundle
6) Restart agent
7) Disk Cleanup
8) Exit

xdmsh> 4

选择选项“4) 取消注册”。 系统会提示进行确认。

警告

取消注册会停止代理上运行的任何迁移作业,并将代理从可用迁移代理池中永久删除。 不支持重新注册以前注册过的代理 VM。 如果需要新代理,则应注册新的、以前未注册过的代理 VM。 请勿重用以前取消注册的代理 VM。

在取消注册过程中会发生以下几件事:

  • 代理从存储移动程序资源中删除。 你无法再在门户的“已注册代理”选项卡中看到该代理,也无法为新的迁移作业选择它

  • 代理也会从 Azure ARC 服务中删除。 此次删除将删除类型为“服务器 - Azure Arc”的混合计算资源,该资源表示与存储移动程序资源在同一资源组中的 Azure ARC 服务的代理

  • 取消注册操作会将代理的托管标识从 Microsoft Entra ID 中移除。 关联的服务主体会被自动移除,从而使此代理针对其他 Azure 资源的任何权限失效。 如果检查基于角色的访问控制 (RBAC) 角色分配,例如代理以前有权访问的目标存储容器,则再也找到代理的服务主体,因为它已被删除。 分配本身仍显示为“未知服务主体”,但此分配不再连接到标识,并且永远无法重新连接。 这只是一个标志,表明这里曾存在角色分配,而服务主体不再存在。

    此行为是标准行为,并不特定于 Azure 存储移动程序。 如果从 Microsoft Entra ID 中移除其他服务主体,然后检查以前的角色分配,你会发现行为是相同的。

警告

支持取消注册脱机代理,但代理的 Azure ARC 资源不会自动删除。 而是在取消注册脱机代理后需要手动删除资源。 代理托管标识的生命周期与此资源关联。 删除它会删除托管标识和服务主体,如前所述。

当代理从 Azure 门户和 Azure PowerShell 或 Azure CLI 消失时,你可以检查取消注册过程是否完成。 你还需要确认类型为“服务器 - Azure Arc”的混合计算资源已从资源组中删除

还可以使用代理的管理 shell 检查是否已取消注册代理。 若要验证是否取消注册,请导航到任何子菜单,然后返回到顶级菜单。 如果取消注册成功,你会看到菜单选项从“取消注册”切换到“注册”。 如前所述,不支持重新注册。

在取消注册完成后,可以停止虚拟化主机上的代理 VM。 最好删除代理 VM 映像,因为它之前已注册,保留了某些状态,并且不得再次使用。 如果需要新代理,请部署具有新代理映像的新 VM,它们之前从未注册过。

后续步骤

部署了代理后,启动它并更改本地帐户的默认密码: