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

排查无代理 VMware 迁移中复制速度缓慢或迁移停滞的问题

本文可帮助你排查在使用“Azure Migrate: 服务器迁移”无代理方法复制本地 VMware VM 时可能遇到的复制速度缓慢或迁移停滞问题。

注意

此端到端 VMware 迁移方案文档目前为预览版。 若要详细了解如何使用 Azure Migrate,请参阅 Azure Migrate 产品文档

VM 复制速度缓慢或停滞

执行复制时,可能会发现特定 VM 的复制未按预期进度进行。 通常情况下,此问题的根本原因是复制所需的某些资源不可用或短缺。 这些资源可能被正在复制的其他 VM 或数据中心设备上运行的一些其他进程占用。

以下是通常导致此问题的一些原因和补救措施。

NFC 缓冲区大小较低

Azure Migrate 设备在使用 32 MB NFC 缓冲区在 ESXi 主机上并发复制 8 个磁盘的限制下运行。 NFC 缓冲区大小小于 32 MB 可能会导致复制速度缓慢。 还可以出现以下异常:

异常:GatewayErrorHandling.GatewayServiceException:操作失败,出现错误“内存分配失败。 内存不足”。

修正

可以将 NFC 缓冲区大小增加到 32 MB,以提高并发性。 需要在 ESXi 主机和设备上完成设置。 如果没有,复制可能很难完成。

注意

将大小增加到 32 MB 以上可能会导致环境中的资源约束。 在继续操作之前,请咨询系统管理员以了解其含义。

ESXi 主机中的更改

  1. 以 root 身份通过 SSH 连接到 ESXi 主机。

  2. 使用 vi 编辑器打开“/etc/vmware/hostd/config.xml”。

  3. 找到如下所示的部分:

    <nfcsvc> 
    <enabled>true</enabled> 
    <maxMemory>134217728</maxMemory> 
    <maxStreamMemory>10485760</maxStreamMemory> 
    <path>libnfcsvc.so</path> 
    </nfcsvc> 
    
  4. maxMemory 的值编辑为要为 NFC 缓冲区配置的值(以字节为单位)。 在此示例中,该值设置为 128 MB (128 * 1024 * 1024)。

  5. 保存并退出。

  6. 使用以下命令从 shell 重启管理代理:

    • /etc/init.d/hostd restart
    • /etc/init.d/vpxa restart

设备中的更改

  1. 使用远程桌面以管理员身份登录到 Azure Migrate 设备。
  2. 打开“%programdata%\Microsoft Azure\Config”文件夹中的 GatewayDataWorker.json 文件。
  3. 如果不存在,则创建一个空 json 文件,并将以下文本粘贴到创建的新文件中。
    { 
     "HostBufferSizeInMB": "32", 
    } 
    
  4. HostBufferSizeInMB 的值更改为在 ESXi 主机中设置的值。
  5. 保存并退出。
  6. 重新启动设备上运行的 Azure Migrate 网关服务。 打开 PowerShell 并执行以下命令:
    • net stop asrgwy(等待服务停止)
    • net start asrgwy

ESXi 主机可用 RAM 低

当复制 VM 所在的 ESXi 主机繁忙时,复制过程将由于 RAM 不可用而变慢。

修正

使用 VMotion 将复制速度较慢的 VM 移动到不太繁忙的 ESXi 主机。

网络带宽

由于 Azure Migrate 设备可用的网络带宽较低,复制速度可能会较慢。 带宽低可能是由于其他应用程序耗尽了带宽、存在带宽限制应用程序或限制复制设备带宽使用的代理设置。

修正

如果宽带宽较低,可以先减少使用网络带宽的应用程序数量。 询问网络管理员是否存在任何限制应用程序或代理设置。

磁盘 I/O

因为正在复制的服务器上的负载过大,导致与其连接的磁盘上的 I/O 操作量较高,复制速度可能很慢。 建议减少服务器负载以提高复制速度。 也可能遇到以下错误:

虚拟机“VM 名称”的最后一个复制周期失败。 遇到超时事件。

如果不采取任何操作,复制将继续并延迟完成。

磁盘写入速率

如果数据上传速度高于在启用复制时选择的磁盘的写入速度,复制速度可能会比预期慢。 若要在相同的上传速度下获得更快的速度,需要重新启动复制并在选择复制的磁盘类型时选择“高级”

注意

对于特定 VM,评估期间建议的磁盘类型可能不是“高级”磁盘类型。 在这种情况下,不建议切换到高级磁盘来提高复制速度,因为迁移后可能不需要将高级磁盘附加到此 VM。

VM 上的迁移操作停滞

在触发特定 VM 的迁移时,你可能会发现迁移停滞在某个阶段(排队或增量同步)的时间超过预期。 通常情况下,此问题的根本原因是迁移所需的某些资源不可用或短缺。 这些资源可能被正在复制的其他 VM 或数据中心设备上运行的一些其他进程占用。 以下是通常导致此问题的一些原因和补救措施。

NFC 缓冲区大小较低

如果在为第二个 VM 触发迁移时,服务器正在进行 IR 周期,则第二个 VM 的迁移作业可能会停滞。 即使迁移作业具有高优先级,NFC 缓冲区也可能无法用于迁移。 在这种情况下,建议停止或暂停具有大磁盘的服务器的初始复制,并完成第二个 VM 的迁移。

正在进行的增量同步周期未完成

如果在正在进行的增量复制周期期间触发迁移,则会将其排队。 将首先完成 VM 上的增量复制周期,然后再开始迁移。 触发迁移所需的时间取决于完成一个增量同步周期所需的时间。

本地 VM 的关闭时间比平时更久

尝试在不关闭 VM 的情况下进行迁移,或者手动关闭 VM 然后进行迁移。

后续步骤

详细了解如何迁移 VMware VM。