使用网络 ATC 部署主机网络

本文将指导你了解网络 ATC 的需求、最佳实践和部署。 网络 ATC 简化了 Windows Server 和 Azure 本地群集的部署和网络配置管理。 网络 ATC 为部署主机网络提供了一种基于意图的方法。 通过指定网络适配器的一个或多个意向(管理、计算或存储),可自动部署所需的配置。 有关网络 ATC 的详细信息,包括概述和定义,请参阅 网络 ATC 概述

如果你有反馈或遇到任何问题,请查看要求和最佳做法部分,检查网络 ATC 事件日志,并与Microsoft支持团队合作。

Prerequisites

完成以下使用网络 ATC 的先决条件:

  • 群集中的所有服务器都必须针对 Windows Server 运行 Windows Server 2025 或更高版本,对于 Azure 本地环境,必须运行版本 2311.2 或更高版本。

  • 必须使用经 Windows Server 或 Azure 本地认证的物理主机。 有关经安全核心服务器认证的硬件,请参阅 Windows Server 目录。 对于 Azure 本地的已验证节点或更高,请参阅 Azure 本地目录

  • 同一网络 ATC 意向中的适配器必须是对称的(具有相同的品牌、型号、速度和配置),并且在每个群集节点上都可用。

    • 非对称适配器会导致部署任何意向都失败。 在部署意向之前,网络 ATC 会自动确认群集中所有节点的适配器对称性。

    • 有关适配器对称性的详细信息,请参阅 Switch Embedded Teaming (SET)

  • 意向中指定的每个物理适配器都必须在群集中的所有节点上使用同一名称。

  • 确保每个网络适配器状态为 Up(由 PowerShell Get-NetAdapter cmdlet 验证)。

  • 每个节点必须安装以下 Windows Server 功能:

    • 网络 ATC
    • Hyper-V
    • 故障转移群集
    • 数据中心桥接

    下面是通过 PowerShell 安装所需功能的示例:

    Install-WindowsFeature -Name NetworkATC, Hyper-V, 'Failover-Clustering', 'Data-Center-Bridging' -IncludeManagementTools
    
  • 在每个主机的同一 PCI 槽中插入每个适配器。 这种做法可以简化映像系统的自动命名约定。

  • 在网络 ATC 之前配置物理网络(交换机),包括 VLAN、MTU 和 DCB 配置。 有关详细信息,请参阅物理网络要求

Important

在虚拟机中部署网络 ATC 可能仅用于测试和验证目的。 基于 VM 的部署需要替代默认适配器设置才能禁用 NetworkDirect 属性。 有关提交替代的详细信息,请参阅: 替代默认网络设置

在独立模式下部署网络 ATC 可能仅用于测试和验证目的。

常见网络 ATC 命令

若要标识可用的网络 ATC 命令,请在 Get-Command -ModuleName NetworkATC PowerShell 中运行 cmdlet。 请确保以管理员身份运行 PowerShell。

Remove-NetIntent cmdlet 命令用于从本地节点或群集中移除意图。 此命令不会销毁已调用的配置。

示例意向

网络 ATC 更改的不是您部署的内容,而是您部署主机网络的方式。 只要每个方案都是Microsoft支持的方案,就可以部署多个方案。 下面是常见部署选项的一些示例,以及所需的 PowerShell 命令。 这些方案不是唯一可用的组合,但它们应该让你了解可能的情况。

为简单起见,只展示每个 SET 组合的两个物理适配器,但也可以添加更多适配器。 有关详细信息,请参阅主机网络规划

完全聚合意向

对于此目的,计算、存储和管理网络在所有群集节点上进行部署和管理。

完全聚合意向

Add-NetIntent -Name ConvergedIntent -Management -Compute -Storage -AdapterName pNIC01, pNIC02

聚合计算和存储意图;单独管理意图

两种意向在群集节点之间进行管理。 管理使用 pNIC01 和 pNIC02,计算和存储使用不同的适配器。

存储和计算融合意向

Add-NetIntent -Name Mgmt -Management -AdapterName pNIC01, pNIC02
Add-NetIntent -Name Compute_Storage -Compute -Storage -AdapterName pNIC03, pNIC04

完全分解意向

对于此目的,计算、存储和管理网络均在所有群集节点的不同适配器上进行管理。

完全分解意向

Add-NetIntent -Name Mgmt -Management -AdapterName pNIC01, pNIC02
Add-NetIntent -Name Compute -Compute -AdapterName pNIC03, pNIC04
Add-NetIntent -Name Storage -Storage -AdapterName pNIC05, pNIC06

仅限存储的意向

对于这种意向,只会对存储进行管理。 网络 ATC 不管理管理和计算适配器。

仅存储意向

Add-NetIntent -Name Storage -Storage -AdapterName pNIC05, pNIC06

计算与管理意图

对于这种意向,只会对计算和管理网络进行管理,而不会管理存储。

管理和计算意图

Add-NetIntent -Name Management_Compute -Management -Compute -AdapterName pNIC01, pNIC02

多个计算(交换机)意向

对于此目的,会对多台计算交换机进行管理。

多个交换机意向

Add-NetIntent -Name Compute1 -Compute -AdapterName pNIC03, pNIC04
Add-NetIntent -Name Compute2 -Compute -AdapterName pNIC05, pNIC06

默认网络 ATC 值

网络 ATC 使用一组默认值来简化主机网络的部署和管理。 创建意向或修改网络设置时,将应用这些默认值。 了解这些默认值有助于有效地管理网络配置。

默认值

本部分介绍网络 ATC 配置的其他默认值。

默认 VLAN

默认情况下,网络 ATC 将以下 VLAN 用于 具有存储 意向类型的适配器。 如果适配器连接到 物理 交换机,则必须在物理网络上允许这些 VLAN。 如果适配器是无开关的,则不需要其他配置。

适配器意向 默认值
Management 未修改为管理适配器配置的 VLAN
存储适配器 1 711
存储适配器 2 712
存储适配器 3 713
存储适配器 4 714
存储适配器 5 715
存储适配器 6 716
存储适配器 7 717
存储适配器 8 718
将来使用 719

请考虑以下命令:

Add-NetIntent -Name MyIntent -Storage -AdapterName pNIC01, pNIC02, pNIC03, pNIC04

物理 NIC(或虚拟 NIC,如有必要)配置为分别使用 VLAN 711、712、713 和 714。

Note

使用网络 ATC 可以更改与 StorageVlans 上的 Add-NetIntent 参数一同使用的 VLAN。

自动存储 IP 寻址

网络 ATC 会自动为具有 存储 意向类型的适配器配置有效的 IP 地址。 网络 ATC 以统一的方式跨群集中的所有节点执行此配置,并验证所选地址是否尚未在网络上使用。

存储意向中每个节点上每个适配器的默认 IP 地址设置如下:

Adapter IP 地址和子网 VLAN
pNIC1 10.71.1.X 711
pNIC2 10.71.2.X 712
pNIC3 10.71.3.X 713

若要替代自动存储 IP 寻址,请创建存储替代并在创建意向时传递该替代:

$StorageOverride = New-NetIntentStorageOverrides
$StorageOverride.EnableAutomaticIPGeneration = $false
Add-NetIntent -Name MyIntent -Storage -Compute -AdapterName 'pNIC01', 'pNIC02' -StorageOverrides $StorageOverride

群集网络设置

默认情况下,网络 ATC 会配置一组群集网络功能。 默认值如下所示:

Property Default
EnableNetworkNaming $true
EnableLiveMigrationNetworkSelection $true
EnableVirtualMachineMigrationPerformance $true
VirtualMachineMigrationPerformanceOption 计算默认值:SMB、TCP 或压缩
MaximumVirtualMachineMigrations 1
MaximumSMBMigrationBandwidthInGbps 基于设置计算默认值

默认数据中心桥接 (DCB) 配置

网络 ATC 建立以下优先级和带宽预留。 还应在物理网络上配置此配置。

Policy Use 默认优先级 默认带宽预留
Cluster 群集检测信号预留 7 如果一个或多个适配器为 10 Gbps,则为 2%;如果一个或多个适配器 <为 > 10 Gbps,则为 1%
SMB_Direct RDMA 存储流量 3 50%
Default 所有其他流量类型 0 Remainder

Note

使用网络 ATC 可以更改默认设置,例如默认带宽预留。 有关示例,请参阅 更新或重写网络设置

常见错误消息

使用新的事件日志时,有一些简单的故障排除方法可以识别意向部署失败。 本部分概述了遇到问题时的一些常见解决方法。 以下错误来自 cmdlet 的 Get-NetIntentStatus 输出。

错误:AdapterBindingConflict

适配器绑定错误的屏幕截图。

方案 1:适配器绑定到与网络 ATC 部署的新 vSwitch 冲突的现有 vSwitch。

溶液: 删除冲突的 vSwitch,然后 Set-NetIntentRetryState

场景 2:适配器绑定到组件,但该组件不一定是 vSwitch。

溶液: 禁用vms_pp组件(从 vSwitch 取消绑定适配器),然后运行 Set-NetIntentRetryState。

错误:ConflictingTrafficClass

ConflictingTrafficClass 错误的屏幕截图。

出现此问题的原因是已配置流量类。 网络 ATC 正在尝试部署与此预配置流量类冲突的流量类。 例如,当网络 ATC 尝试部署具有不同名称的类似流量类时,你可能已经部署了一个名为 SMB 的流量类。

Solution:

清除系统上的现有 DCB 配置,然后运行 Set-NetIntentRetryState


Get-NetQosTrafficClass | Remove-NetQosTrafficClass
Get-NetQosPolicy | Remove-NetQosPolicy -Confirm:$false
Get-NetQosFlowControl | Disable-NetQosFlowControl

错误:网络对称检查失败

可能会遇到功能对称适配器具有不同组件 ID 字符串的情况。 如果在升级期间或在同一意向中组合 OCP 和 PCI NIC 时,将子字符串添加到适配器的组件 ID 中,则可能会发生此情况。 若要解决此问题,可以通过将注册表项设置为 NicSymmetryCheckEnabled 0 来禁用基于组件的对称检查。 此设置允许网络 ATC 继续部署,而无需根据组件 ID 检查对称性。 仅当确定适配器在功能上是对称的时,才应使用此解决方法。

Stop-Service -Name NetworkATC
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\NetworkATC' -Name "NicSymmetryCheckEnabled" -Value 0 -PropertyType DWord
Start-Service -Name NetworkATC

禁用基于组件 ID 的对称检查后,可以继续执行意向部署。

错误:RDMANotOperational

“RDMA 未运行”错误的屏幕截图。

你可能会看到以下消息:

  1. 如果网络适配器使用内置驱动程序。 不支持内置驱动程序,必须进行更新。

    溶液: 升级适配器的驱动程序。

  2. 如果在 BIOS 中禁用 SR-IOV。

    溶液: 为系统 BIOS 中的适配器启用 SR-IOV

  3. 如果在 BIOS 中禁用 RDMA

    溶液: 为系统 BIOS 中的适配器启用 RDMA

错误:InvalidIsolationID

“无效隔离 ID”错误的屏幕截图。

使用 RoCE RDMA 并用无效值替代默认 VLAN 时,将发生此消息。 这意味着所选的值不能与该协议一起使用。 例如,RoCE RDMA 需要非零 VLAN,以便可以将优先级流控制(PFC)标记添加到帧。 必须使用介于 1 - 4094 之间的 VLAN 值。 由于多种原因,网络 ATC 不会替代你指定的值,而无需管理员干预。 若要解决此问题,请执行下列操作:

  1. 选择 iWARP 作为 RDMA (NetworkDirect) 协议

    溶液: 如果适配器支持,则网络 ATC 会自动选择 iWARP 作为其 RDMA 协议,该协议可能使用 VLAN ID 为 0。 移除强制将 RoCE 作为所选协议的替代操作。

  2. 使用默认 VLAN

    溶液: 强烈建议使用网络 ATC 默认 VLAN

  3. 使用有效的 VLAN

    指定 VLAN 时,请使用 -StorageVLANs 参数,并在 1 到 4094 之间指定逗号分隔值。

后续步骤