VM 的 Azure 验证

> 适用于:Azure Stack HCI 版本 23H2 及更高版本。

Microsoft Azure 提供了一系列仅为在 Azure 上运行的差异化工作负载和功能。 Azure Stack HCI 扩展从 Azure 获取的许多相同权益,同时在熟悉的相同高性能本地或边缘环境中运行。

VM 的 Azure 验证 使受支持的 Azure 独占工作负载能够在云之外工作。 此功能以 Azure 中的 IMDS 证明 服务为模型,是 Azure Stack HCI 23H2 或更高版本上默认启用的内置平台证明服务。 它有助于保证这些 VM 在其他 Azure 环境中运行。

有关 Azure Stack HCI 版本 22H2 或更早版本此功能的早期版本的详细信息,请参阅 Azure Stack HCI 上的 Azure 权益

Azure Stack HCI 上提供的优势

VM 的 Azure 验证使你能够使用这些仅在 Azure Stack HCI 上可用的权益:

工作负荷 它是什么 如何获取权益
扩展安全更新 (ESU) 对于 Azure Stack HCI 上终止支持的 SQL 和 Windows Server VM,无需额外付费即可获取安全更新。
有关详细信息,请参阅 Azure Stack HCI 上的免费扩展安全性汇报 (ESU)
必须使用最新服务堆栈汇报为运行 Windows Server 2012 或更早版本的旧版 VM 启用旧版 OS 支持
Azure 虚拟桌面 (AVD) AVD 会话主机只能在 Azure 基础结构上运行。 使用 Azure VM 验证激活 Azure Stack HCI 上的 Windows 多会话 VM。
AVD 的许可要求仍然适用。 请参阅 Azure 虚拟桌面定价
对于运行版本 Windows 11 多会话的 VM 自动激活,其版本为 2024 年 4 月 9 日发布的 4B 更新 (22H2:KB5036893、21H2:KB5036894) 或更高版本。 必须为运行版本Windows 10多会话的 VM 启用旧版 OS 支持,该版本在 2024 年 4 月 9 日发布的 4B 更新KB5036892或更高版本。
Windows Server Datacenter:Azure Edition Azure Edition VM 只能在 Azure 基础结构上运行。 激活 Windows Server Azure Edition VM,并使用最新的 Windows Server 创新和其他独占功能。
许可要求仍然适用。 查看在 Azure Stack HCI 上许可 Windows Server VM 的方法。
对于运行 Windows Server Azure Edition 2022 且 2024 年 4 月 9 日发布的 4B 更新的 VM 自动激活 (KB5036909) 或更高版本。
Azure Policy 来宾配置 免费获取Azure Policy来宾配置。 此 Arc 扩展支持将 OS 设置作为服务器和 VM 的代码进行审核和配置。 Arc 代理版本 1.39 或更高版本。 请参阅 最新 Arc 代理版本

注意

若要确保继续运行,请在 2024 年 6 月 17 日之前将 Azure Stack HCI 上的 VM 更新为最新的累积更新。 此更新对于 VM 继续使用 Azure 权益至关重要。 有关详细信息,请参阅 Azure Stack HCI 博客文章

体系结构

本部分是可选阅读,详细介绍了 Azure Stack HCI 上的 Azure VM 验证如何“后台”工作。

Azure VM 验证依赖于 Azure Stack HCI 上的内置平台证明服务。 此服务是在 Azure 中运行的同一 IMDS 证明 服务之后建模的,并返回几乎相同的有效负载。 主要区别在于,它在本地运行,因此可保证 VM 在 Azure Stack HCI 上运行,而不是在 Azure 上运行。

显示 Azure 验证体系结构的示意图。

  1. 运行版本 23H2 或更高版本的 Azure Stack HCI 默认启用 Azure VM 验证。 在服务器启动期间,HciSvc 通过 Hyper-V 套接字生成集成服务,即 (VMBus) ,以促进 VM 和服务器之间的安全通信。

    旧版 OS 支持:无法进行 Win32 API 调用或直接查询集成服务的工作负载必须启用旧版 OS 支持。 此设置为同一服务器上的 VM 提供专用且不可路由的 REST 终结点。

    若要启用此终结点,请在名为 AZSHCI_HOST-IMDS_DO_NOT_MODIFY) 的 Azure Stack HCI 服务器上 (配置内部 vSwitch。 之后,VM 必须配置 (AZSHCI_GUEST IMDS_DO_NOT_MODIFY) 的 NIC,并将其附加到同一 vSwitch。

    注意

    修改或删除此开关和 NIC 会阻止 Azure VM 验证正常工作。 如果遇到错误,请尝试关闭 ,然后重新启用旧版 OS 支持。

  2. 每当 Azure Stack HCI 与 Azure 同步时,HciSvc 都会从 Azure 获取证书,并将其安全地存储在每台服务器上的 enclave 中。

    注意

    Azure Stack HCI 群集每次与 Azure 同步时,都会续订证书,每次续订的有效期为 30 天。 只要保持 Azure Stack HCI 的常规 30 天连接要求,就无需用户执行任何操作即可续订证书。

  3. 为了激活权益,使用者工作负载会从服务器请求证明。 他们尝试通过 VM 总线发送请求,或者还可以使用旧版 OS 支持中配置的网络组件查询 REST 终结点。 这两种 VM-服务器通信方法都受支持,并且可以在同一群集上共存。

    注意

    使用旧版 OS 支持时,必须手动启用需要激活权益的 VM 的访问权限。

    然后,HciSvc 使用存储的 Azure 证书返回已签名的响应。 使用者验证响应并激活关联的权益。

管理 Azure VM 验证

默认情况下,Azure Stack HCI 23H2 或更高版本中会自动启用 Azure VM 验证。 以下说明概述了使用此功能的先决条件,以及管理权益 (可选) 的步骤。

注意

若要) 启用扩展安全性汇报 (ESU,必须执行其他设置并启用旧版 OS 支持

主机先决条件

VM 先决条件

可以使用 Windows Admin Center 或 PowerShell 管理 Azure VM 验证,也可以使用 Azure CLI 或Azure 门户查看其状态。 以下部分详细介绍了每种选项。

检查 Azure VM 验证的服务器状态

  1. 在Windows Admin Center,从顶部下拉菜单中选择“群集管理器”,导航到要激活的群集,然后在“设置”下,选择“VM 的 Azure 验证”。

  2. 若要检查 Azure VM 验证服务器状态,请执行以下操作:

    • 群集级别状态: 主机状态 显示为 “开”。

    • 服务器级状态:在仪表板的“服务器”选项卡下,检查每个服务器的状态在表中显示为“活动”。

      显示服务器状态的屏幕截图。

排查服务器问题

  • 在“ 服务器 ”选项卡下,如果一个或多个服务器显示为 “已过期”:
    • 如果服务器已超过 30 天未与 Azure 同步,则其状态将显示为“已过期”或“非活动”。 选择“ 与 Azure 同步 ”以计划手动同步。

管理 VM 上激活的权益

  1. 若要检查在 VM 上激活哪些权益,请导航到“VM”选项卡。

  2. 仪表板显示 VM 的数量:

    • 有效优势:这些 VM 具有通过 Azure VM 验证激活的 Azure 独占功能。
    • 非活动优势:这些 VM 具有 Azure 独占功能,在激活之前需要进一步操作。
    • 未知:无法确定这些 VM 的合格权益,因为 Hyper-V 数据交换已关闭。 请参阅以下故障排除部分。
    • 没有适用的好处:这些 VM 没有 Azure 独占功能,因此不需要 Azure VM 验证。
  3. 该表显示适用于每个 VM 的 合格权益 。 请参阅 Azure Stack HCI 上可用的权益的完整列表

    显示虚拟机仪表板和状态的屏幕截图。

排查 VM 问题

旧版 OS 支持

对于缺少必要的 Hyper-V 功能 (来宾服务接口) 直接与主机通信的旧 VM,必须配置用于 Azure VM 验证的传统网络组件。 如果具有这些工作负载(例如扩展安全性汇报 (ESU) ),请按照本部分中的说明设置旧版 OS 支持。

1. 在主机上启用旧版 OS 支持

  1. 在“Windows Admin Center”中,从顶部下拉菜单中选择“群集管理器”,导航到要激活的群集,然后在“设置”下,选择“VM 的 Azure 验证”。

  2. “旧版 OS 支持”部分中,选择“ 更改状态”。 在上下文窗格中选择“ 打开 ”。 此设置还为所有现有 VM 启用网络访问。 必须手动为以后创建的任何新 VM 启用旧版 OS 支持。

  3. 选择“ 更改状态” 进行确认。 服务器可能需要几分钟才能反映更改。

  4. 成功启用旧版 OS 支持后:

    • 检查 旧版 OS 支持 是否显示为 “开”。

    • 在仪表板的“服务器”选项卡下,检查表中对每台服务器的旧版 OS 支持显示为“打开”。

      显示包含旧版 OS 支持信息的仪表板的屏幕截图。

2. 为新 VM 启用访问权限

必须为第一次设置后创建的任何新 VM 启用旧版 OS 网络。 若要管理 VM 的访问权限,请导航到“VM”选项卡。需要旧版 OS 支持访问权限的任何 VM 都显示为“非活动”。 选择为所选 VM 或群集上所有现有 VM 设置旧版 OS 网络 的操作。

显示旧版 VM 仪表板的屏幕截图。

注意

若要在第 1 代 VM 上成功启用旧版 OS 支持,必须先关闭 VM 以启用要添加的 NIC。

常见问题解答

本部分提供有关使用 Azure 权益的一些常见问题的解答。

可以通过 Azure VM 验证启用哪些 Azure 独占工作负载?

请参阅此处的完整列表

启用 Azure VM 验证需要什么费用吗?

错误。 启用 Azure VM 验证不会产生额外的费用。

是否可以在 Azure Stack HCI 以外的环境中使用 Azure VM 验证?

错误。 Azure VM 验证是 Azure Stack HCI OS 中内置的一项功能,只能在 Azure Stack HCI 上使用。

如果我刚刚从 22H2 升级到 23H2,并且之前启用了 Azure 权益功能,是否需要执行任何新操作?

如果升级了以前为工作负载设置了 Azure Stack HCI 上的 Azure 权益 的群集,则升级到 23H2 时无需执行任何操作。 升级时,该功能将保持启用状态,旧版 OS 支持也处于打开状态。 但是,如果要在 23H2 中使用改进的方法来通过 VM 总线执行 VM 到主机的通信,请确保具有所需的 主机先决条件VM 先决条件

我刚刚在群集上设置了 Azure VM 验证。 如何实现确保 Azure VM 验证保持活动状态?

  • 在大多数情况下,不需要用户操作。 Azure Stack HCI 在与 Azure 同步时自动续订 Azure VM 验证。
  • 但是,如果群集断开连接超过 30 天,并且 Azure VM 验证显示为“已过期”,则可以使用 PowerShell 手动同步,并Windows Admin Center。 有关详细信息,请参阅同步 Azure Stack HCI

部署新 VM 或删除 VM 时会发生什么情况?

  • 部署需要 Azure VM 验证的新 VM 时,如果它们具有正确的 VM 先决条件,它们将自动激活。

  • 但是,对于使用旧版 OS 支持的旧版 VM,可以使用上述说明手动添加新 VM 以使用 Windows Admin Center 或 PowerShell 访问 Azure VM 验证。

  • 仍可以像平常一样删除和迁移 VM。 迁移后,VM 上仍存在 NIC AZSHCI_GUEST-IMDS_DO_NOT_MODIFY 。 若要在迁移前清理 NIC,可以使用 Windows Admin Center 或 PowerShell 根据旧版 OS 支持的上述说明从 Azure VM 验证中删除 VM,也可以先迁移,然后再手动删除 NIC。

添加或移除服务器时会发生什么情况?

  • 添加服务器时,如果服务器具有正确的 主机先决条件,则会自动激活该服务器。
  • 如果使用旧版 OS 支持,则可能需要手动启用这些服务器。 在 PowerShell 中运行 Enable-AzStackHCIAttestation [[-ComputerName] <String>] 。 仍可以像平常一样删除服务器或从群集中移除它们。 从群集中删除 vSwitch AZSHCI_HOST-IMDS_DO_NOT_MODIFY 仍存在于服务器上。 如果计划稍后将服务器添加回群集,可以将其保留,也可以手动将其删除。

后续步骤