通过水化为 Azure 准备本地磁盘

一些本地虚拟机(VM)需要在启动和连接 Azure 前更改配置。 Azure Site Recovery 可在测试、计划内或计划外故障切换期间,通过 hydration 过程进行这些更改。 Hydration 仅适用于符合条件的 Hyper-V-Azure 和 VMware to-Azure 保护机器及支持的操作系统版本。 其他已为 Azure 做好准备的复制路径不会使用临时水合虚拟机。

是否需要水合取决于所选恢复点以及源虚拟机和目标虚拟机的配置。 如果在故障转移前没有准备好不支持的操作系统,恢复的虚拟机可能无法启动或无法连接网络。

补水机制

  1. Site Recovery解析所选恢复点,并准备该恢复点中磁盘的目标副本。 根据复制方法的不同,准备工作可能包括复制和验证虚拟硬盘以及创建托管磁盘。 在选择恢复点之后添加的磁盘,切换到那个旧点时不会被包含在内。
  2. Site Recovery 创建临时辅助虚拟机,并将准备好的源磁盘作为数据磁盘附加。 对于 Windows 系统,源 OS 磁盘通常处于已附加状态。 对于Linux,通常会连接所有在所选恢复点的受保护磁盘。
  3. Site Recovery 在附加磁盘上运行所需的操作系统准备。
  4. Site Recovery 会分离已准备好的磁盘并尝试移除临时资源。
  5. Site Recovery 通过使用准备好的磁盘创建最终恢复的虚拟机。 辅助虚拟机是临时的,永远不会被转换成恢复的虚拟机。

为了托管辅助虚拟机,Site Recovery 可以在你的订阅中创建网络接口、虚拟网络、子网和网络安全组。 如果 Azure Policy 阻止了这些网络资源的创建,Site Recovery 会尝试使用已配置为复制的目标虚拟网络和子网。 虚拟网络必须允许目标区域的存储服务标签的出站访问。 有关详细信息,请参阅 可用服务标记。

临时辅助虚拟机和临时映像磁盘使用平台管理加密,不支持客户管理密钥(CMK)。 此限制仅适用于临时水合产生的伪影。 验证过的磁盘加密集和CMK设置仍适用于最终恢复磁盘。

关于辅助 VM 的大小要求和选择行为,请参见 排查水化问题。

在混合过程中执行的更改

准备脚本根据要迁移的源 VM 的 OS 类型执行以下更改。 还可以使用本部分作为指南,为不支持系统配置的操作系统版本手动准备 VM 以进行故障切换。

  1. 发现并准备 Windows OS 卷区。

    在执行相关配置更改之前,准备好的脚本将验证选择的 OS 磁盘是否适合故障转移。 准备脚本将查看系统可见的所有附加卷,并在 SYSTEM 注册表配置单元文件路径中查找源 OS 卷。

    此步骤将执行以下操作:

    • 在附加到临时 VM 的 OS 磁盘上装载每个分区。

    • 装载分区后查找 \Windows\System32\Config\System 注册表文件。

    • 如果找不到这些文件,则卸载该分区,并继续搜索正确的分区。

    • 如果这些文件不在任何分区上,则可能表示选择了错误的 OS 磁盘,或者 OS 磁盘已损坏。 Azure Site Recovery 将在故障转移过程中失败,并出现相应的错误。

    注释

    如果您是手动准备服务器以进行故障转移,则不需要此步骤。

  2. 进行启动和连接相关的更改。

    检测到源 OS 卷文件后,准备脚本会将 SYSTEM 注册表配置单元加载到临时 Azure VM 的注册表编辑器中,并执行以下更改以确保 VM 正常启动和连接。 如果 OS 版本不支持混合,则需要手动配置这些设置。

    1. 验证是否存在所需的驱动程序。

      确保所需的驱动程序已安装并设置为在引导启动时加载。 这些 Windows 驱动程序允许服务器与硬件和其他连接设备进行通信。

      • IntelIde.sys
      • Atapi
      • Storflt
      • Storvsc
      • VMbus
    2. 将存储区域网络 (SAN) 策略设置为“全部联机”。

      此操作可确保 Azure VM 中的 Windows 卷使用的驱动器号分配与本地 VM 相同。 默认情况下,将为 Azure VM 分配驱动器 D: 用作临时存储。 这种驱动器分配会导致所有其他附加存储驱动器分配递增一个字母。 若要避免这种自动分配,并确保 Azure 将下一个可用驱动器号分配给其临时卷,请将存储区域网络 (SAN) 策略设置为“全部联机”。

      若要手动配置此设置,请执行以下操作:

      • 在本地服务器上,使用提升的权限打开命令提示符并输入 diskpart。

        显示手动配置的屏幕截图。

      • 输入 SAN。 如果未保留来宾操作系统的驱动器号,则会返回 Offline All 或 Offline Shared。

      • 在 DISKPART 提示符下,输入 SAN Policy=OnlineAll。 此设置可确保将磁盘联机,并确保可以读取和写入这两个磁盘。

        显示管理员命令提示符 diskpart 联机策略的屏幕截图。

  3. 设置 DHCP 启动类型。

    准备脚本还会将 DHCP 服务启动类型设置为自动。 这将使迁移的 VM 能够获取 IP 地址,并在故障转移后建立连接。 请确保配置了 DHCP 服务,并且其状态为“正在运行”。

    显示如何设置 DHCP 启动类型的屏幕截图。

    若要手动编辑 DHCP 启动设置,请在 Windows PowerShell 中运行以下示例:

    Get-Service -Name Dhcp
    Where-Object StartType -ne Automatic
    Set-Service -StartupType Automatic
    
  4. 禁用 VMware 工具。

    将 VMware 工具服务启动类型(如果存在)设置为“已禁用”,因为 Azure 中的 VM 不需要它们。

    注释

    若要连接到 Windows Server 2003 VM,必须在 Azure VM 上安装 Hyper-V 集成服务。 Windows Server 2003 计算机默认未安装此程序。 请参阅 本文 进行安装和故障转移的准备。

  5. 安装 Azure 来宾代理。

注释

Windows Server 2008、2008 R2、2012 和 2012 R2 已达到支持终止(EOS)。 相应地查看使用情况和计划 OS 升级和迁移。 有关详细信息,请参阅对 [特定产品或服务] 的支持结束。

Azure Site Recovery 将尝试安装 Azure 虚拟机代理(VM 代理),这是一个安全的轻型进程,用于管理虚拟机(VM)与 Azure Fabric 控制器的交互。 VM 代理在启用和执行 Azure 虚拟机扩展方面起主要作用,这些扩展支持 VM 的部署后配置,例如安装和配置软件。 Azure Site Recovery 会自动在 Windows Server 2008 R2 及更高版本上安装 Windows VM 代理。

可以使用 Windows 安装程序包手动安装 Windows VM 代理。 若要手动安装 Windows VM 代理, 请下载 VM 代理安装程序。 还可以在 GitHub Windows IaaS VM 代理版本中搜索特定版本。 VM 代理在 Windows Server 2008 (64 bit) 和更高版本上受支持。

若要检查 Azure VM 代理是否已成功安装,请打开任务管理器,选择“详细信息”选项卡,并查找名为 WindowsAzureGuestAgent.exe 的进程。 存在该进程表示 VM 代理已安装。 还可以使用 PowerShell 检测 VM 代理。

显示成功安装 Azure VM 代理的屏幕截图。

执行上述更改后,系统分区将被卸载。 VM 现已准备好进行故障转移。 详细了解 Windows 服务器的更改。

清理与验证

Site Recovery 会自动尝试分离受保护磁盘,并移除服务创建的辅助资源,如辅助虚拟机、网络接口、辅助操作系统磁盘以及不再使用的临时网络资源。 清理工作是尽最大努力。 失败或取消的操作可能会在订阅中留下临时资源或目标磁盘,Site Recovery 作业会记录清理问题。

辅助资源的清理与 Cleanup test failover 相互独立。 验证测试故障转移后,必须执行 清理测试故障转移 ,删除客户可见的测试虚拟机和测试环境。

有些补水问题会以警告形式出现,而不是停止故障切换。 同样,最终虚拟机可以在作业记录启动或配置后警告时创建。 在执行故障切换之前:

  • 请查看 Site Recovery 作业中的所有警告和错误。
  • 核实最终虚拟机的大小、区域、可用性配置及其他配置设置。 对于可重试的预配失败,Site Recovery 可以在不使用不受支持或限制过严的放置设置的情况下重试。
  • 在提交前,验证虚拟机电源状态、启动诊断、串口控制台、网络连接、授权以及工作负载特定注册情况。

排查水分问题

辅助 VM 大小选择

Site Recovery 首先评估已配置的最终 VM 大小,供临时帮助器虚拟机使用。 辅助工具大小可能与最终恢复的虚拟机大小不同。 合适的辅助器尺寸必须:

  • 使用兼容的x64架构,支持第一代,并且在目标区域和区域内对订阅用户开放。
  • 选择备用大小时,应至少具有两个活跃核心和 2 GiB 的内存。
  • 支持在补水期间连接的源盘数量。 辅助虚拟机自身的操作系统和资源盘不计入数据磁盘限制。 不支持对超过 64 个已附加源磁盘进行水合操作。
  • 当连接的源磁盘需要时,支持高级存储。

Site Recovery 不会选择已退休或不受支持的虚拟机家族。 这些家族包括较早的A、D、F、G、L和H系列,机密计算系列,以及部分专用或已退役的高内存和加速器尺寸。 随着 Azure VM 家族的退役,这些类别可能会发生变化。 Site Recovery 仅将基本尺寸视为最后的后备方案。

如果配置的最终大小不合适,Site Recovery 会先搜索同一系列内兼容的大小,优先考虑磁盘容量充足,然后考虑核心数量。 然后它会搜索更广泛的合格候选人。 如果没有可用的兼容辅助程序大小,该作业将返回 SkuNotAvailableForHydrationVM。

有关故障排除步骤,请参阅 将 VMware 虚拟机或物理计算机故障转移到 Azure 时排查错误。