Azure 本地版本 23H2 的云部署的网络注意事项
适用于:Azure 本地版本 23H2
本文讨论如何设计和规划用于云部署的 Azure 本地版本 23H2 系统网络。 在继续之前,请熟悉各种 Azure 本地网络模式 和可用配置。
网络设计框架
下图显示了为 Azure 本地实例定义网络设计框架的各种决策和步骤-群集大小、群集存储连接、网络流量意向、管理连接和网络适配器配置。 每个设计决策都允许或允许后续步骤中提供的设计选项:
步骤 1:确定群集大小
为了帮助确定 Azure 本地实例的大小,请使用 Azure 本地大小程序工具,可在其中定义配置文件,例如虚拟机数(VM)、VM 大小以及 VM(例如 Azure 虚拟桌面、SQL Server 或 AKS)的工作负荷使用。
如 Azure 本地 系统计算机要求 一文中所述,Azure 本地实例上支持的最大计算机数为 16。 完成工作负荷容量规划后,应充分了解在基础结构上运行工作负荷所需的计算机节点数。
如果工作负荷需要四个或更多个节点:无法部署和使用无交换机配置来存储网络流量。 需要包含支持远程直接内存访问(RDMA)的物理交换机来处理存储流量。 有关 Azure 本地实例网络体系结构的详细信息,请参阅 网络参考模式概述。
如果工作负荷需要三个或更少的节点:可以选择无交换机或交换机配置来建立存储连接。
如果计划稍后横向扩展到三个以上的节点:需要对存储网络流量使用物理交换机。 对于无交换机部署,任何横向扩展操作都需要手动配置Microsoft节点之间的网络布线,这些节点未作为 Azure 本地软件开发周期的一部分进行主动验证。
下面是群集大小决策的总结注意事项:
决策 | 注意事项 |
---|---|
群集大小(每个群集的节点数) | 通过 Azure 门户 或 Azure 资源管理器 模板的无开关配置仅适用于 1、2 或 3 个节点群集。 具有 4 个或更多节点的群集需要存储网络流量的物理交换机。 |
横向扩展要求 | 如果打算使用业务流程协调程序横向扩展群集,则需要使用物理交换机进行存储网络流量。 |
步骤 2:确定群集存储连接
如物理网络要求中所述,Azure Local 支持存储网络流量的两种类型的连接:
- 使用物理网络交换机来处理流量。
- 使用交叉网络或光纤电缆直接连接它们之间的节点,以便存储流量。
上面链接的文章中记录了每个选项的优点和缺点。
如前所述,仅当群集大小为三个或更少节点时,才能在两个选项之间进行决定。 任何具有四个或更多节点的群集都会使用用于存储的网络交换机自动部署。
如果群集少于三个节点,则存储连接决策会影响下一步中可以定义的网络意向的数量和类型。
例如,对于无交换机配置,需要定义两个网络流量意向。 使用交叉电缆的东西部通信的存储流量没有南北连接,它与网络基础结构的其余部分完全隔离。 这意味着需要为管理出站连接和计算工作负荷定义第二个网络意向。
尽管每个网络意向只能定义一个物理网络适配器端口,但不提供任何容错。 因此,我们始终建议为每个网络意向至少使用两个物理网络端口。 如果决定使用网络交换机进行存储,则可以将所有网络流量(包括存储)分组到单个网络意向中,这也称为 超融合 或 完全聚合 主机网络配置。
下面是群集存储连接决策的总结注意事项:
决策 | 注意事项 |
---|---|
没有存储开关 | 1、2 或 3 节点群集仅支持通过 Azure 门户 或 资源管理器 模板部署的无切换配置。 可以使用Azure 门户或资源管理器模板部署 1 或 2 个节点存储无交换机群集。 只能使用资源管理器模板部署 3 个节点存储无交换机群集。 无切换部署不支持横向扩展操作。 部署后对节点数的任何更改都需要手动配置。 使用无存储无交换机配置时,至少需要 2 个网络意向。 |
存储的网络交换机 | 如果打算使用业务流程协调程序横向扩展群集,则需要使用物理交换机进行存储网络流量。 可以将此体系结构与介于 1 到 16 之间的任意数量的节点一起使用。 虽然未强制实施,但可以将单个意向用于所有网络流量类型(管理、计算和存储) |
下图汇总了可用于各种部署的存储连接选项:
步骤 3:确定网络流量意向
对于 Azure 本地,所有部署都依赖于网络 ATC 进行主机网络配置。 通过 Azure 门户 部署 Azure 本地时,会自动配置网络意向。 若要详细了解网络意向以及如何对这些意向进行故障排除,请参阅 常见网络 ATC 命令。
本部分介绍网络流量意向的设计决策的含义,以及它们如何影响框架的下一步。 对于云部署,可以选择四个选项,将网络流量分组到一个或多个意向中。 可用的选项取决于群集中的节点数和使用的存储连接类型。
以下部分将讨论可用的网络意向选项。
网络意向:对所有流量进行分组
网络 ATC 配置包含管理、计算和存储网络流量的唯一意向。 分配给此意向的网络适配器为所有网络流量共享带宽和吞吐量。
此选项需要存储流量的物理交换机。 如果需要无切换体系结构,则无法使用这种类型的意向。 如果为存储连接选择无开关配置,Azure 门户会自动筛选掉此选项。
建议至少使用两个网络适配器端口来确保高可用性。
至少需要 10 Gbps 网络接口才能支持用于存储的 RDMA 流量。
网络意向:组管理和计算流量
网络 ATC 配置两个意向。 第一个意向包括管理和计算网络流量,第二个意向仅包括存储网络流量。 每个意向必须具有一组不同的网络适配器端口。
如果以下项,则可以将此选项用于交换机和无交换机存储连接:
每个意向至少有两个网络适配器端口可用,以确保高可用性。
如果将网络交换机用于存储,则使用物理交换机进行 RDMA。
至少需要 10 Gbps 网络接口才能支持用于存储的 RDMA 流量。
网络意向:对计算和存储流量进行分组
网络 ATC 配置两个意向。 第一个意向包括计算和存储网络流量,第二个意向仅包括管理网络流量。 每个意向都必须使用不同的网络适配器端口集。
此选项需要存储流量的物理交换机,因为同一端口与计算流量共享,这需要南北通信。 如果需要无开关配置,则无法使用这种类型的意向。 如果为存储连接选择无开关配置,Azure 门户会自动筛选掉此选项。
此选项需要 RDMA 的物理交换机。
建议至少使用两个网络适配器端口来确保高可用性。
对于支持 RDMA 流量的计算和存储意向,建议至少使用 10 Gbps 网络接口。
即使没有计算意向声明管理意向,网络 ATC 也会创建交换机嵌入式组合(SET)虚拟交换机,以便为管理网络提供高可用性。
网络意向:自定义配置
只要至少有一个意向包括管理流量,就最多使用自己的配置定义三个意向。 如果需要第二个计算意向,建议使用此选项。 此第二个计算意向要求的方案包括远程存储流量、VM 备份流量或不同工作负荷类型的单独计算意向。
如果存储意向与其他意向不同,则对切换和无交换机存储连接使用此选项。
当需要另一个计算意向或想要通过不同网络适配器完全分隔不同类型的流量时,请使用此选项。
为每个意向至少使用两个网络适配器端口来确保高可用性。
对于支持 RDMA 流量的计算和存储意向,建议至少使用 10 Gbps 网络接口。
下图汇总了可用于各种部署的网络意向选项:
步骤 4:确定管理和存储网络连接
在此步骤中,定义基础结构子网地址空间、如何将这些地址分配给群集,以及节点是否有任何代理或 VLAN ID 要求,以便与 Internet 和其他 Intranet 服务(例如域名系统(DNS)或 Active Directory 服务建立出站连接。
在开始部署之前,必须计划并定义以下基础结构子网组件,以便可以预测任何路由、防火墙或子网要求。
网络适配器驱动程序
安装操作系统后,在节点上配置网络之前,必须确保网络适配器具有 OEM 或网络接口供应商提供的最新驱动程序。 使用默认Microsoft驱动程序时,网络适配器的重要功能可能不会浮出水面。
管理 IP 池
执行 Azure 本地实例的初始部署时,必须为默认部署的基础结构服务定义连续 IP 范围的 IP 范围。
若要确保该范围有足够的 IP 用于当前和未来的基础结构服务,必须使用至少六个连续可用的 IP 地址范围。 这些地址用于群集 IP、Azure 资源桥 VM 及其组件。
如果预计在基础结构网络中运行其他服务,建议向池分配额外的基础结构 IP 缓冲区。 使用 PowerShell 为基础结构网络部署后,如果最初计划的池大小已用尽,则可以添加其他 IP 池。
在部署期间为基础结构子网定义 IP 池时,必须满足以下条件:
# | 条件 |
---|---|
1 | IP 范围必须使用连续 IP,并且所有 IP 必须在该范围内可用。 部署后无法更改此 IP 范围。 |
2 | IP 范围不得包含群集节点管理 IP,但必须与节点位于同一子网中。 |
3 | 为管理 IP 池定义的默认网关必须提供与 Internet 的出站连接。 |
4 | DNS 服务器必须确保使用 Active Directory 和 Internet 进行名称解析。 |
5 | 管理 IP 需要出站 Internet 访问。 |
管理 VLAN ID
我们建议 Azure 本地实例的管理子网使用默认 VLAN,在大多数情况下,该 VLAN 声明为 VLAN ID 0。 但是,如果你的网络要求是对基础结构网络使用特定的管理 VLAN,则必须在计划用于管理流量的物理网络适配器上配置它。
如果计划使用两个物理网络适配器进行管理,则需要在两个适配器上设置 VLAN。 这必须作为计算机的启动配置的一部分完成,在计算机注册到 Azure Arc 之前,以确保你使用此 VLAN 成功注册节点。
若要在物理网络适配器上设置 VLAN ID,请使用以下 PowerShell 命令:
此示例在物理网络适配器 NIC1
上配置 VLAN ID 44。
Set-NetAdapter -Name "NIC1" -VlanID 44
设置 VLAN ID 并在物理网络适配器上配置节点 IP 后,业务流程协调程序将从用于管理和存储它的物理网络适配器中读取此 VLAN ID 值,以便它可用于 Azure 资源桥 VM 或部署期间所需的任何其他基础结构 VM。 如果物理交换机 VLAN 未正确路由,则无法从 Azure 门户 云部署期间设置管理 VLAN ID,因为这会带来破坏节点与 Azure 之间的连接的风险。
使用虚拟交换机管理 VLAN ID
在某些情况下,在部署开始之前,需要创建虚拟交换机。
注意
在创建虚拟交换机之前,请确保启用 Hype-V 角色。 有关详细信息,请参阅 “安装所需的 Windows 角色”。
如果需要虚拟交换机配置,并且必须使用特定的 VLAN ID,请执行以下步骤:
1. 使用建议的命名约定创建虚拟交换机
Azure 本地部署依赖于网络 ATC 来创建和配置虚拟交换机和虚拟网络适配器,以便管理、计算和存储意向。 默认情况下,当网络 ATC 为意向创建虚拟交换机时,它将使用虚拟交换机的特定名称。
建议使用相同的命名约定命名虚拟交换机名称。 虚拟交换机的建议名称如下所示:
“”ConvergedSwitch($IntentName)
,其中 $IntentName
必须与部署期间键入到门户中的意向的名称匹配。 此字符串还必须匹配用于管理的虚拟网络适配器的名称,如下一步中所述。
以下示例演示如何使用建议的命名约定 $IntentName
和 PowerShell 创建虚拟交换机。 网络适配器名称列表是计划用于管理和计算网络流量的物理网络适配器的列表:
$IntentName = "MgmtCompute"
New-VMSwitch -Name "ConvergedSwitch($IntentName)" -NetAdapterName "NIC1","NIC2" -EnableEmbeddedTeaming $true -AllowManagementOS $true
2. 使用所有节点所需的网络 ATC 命名约定配置管理虚拟网络适配器
创建虚拟交换机和关联的管理虚拟网络适配器后,请确保网络适配器名称符合网络 ATC 命名标准。
具体而言,用于管理流量的虚拟网络适配器的名称必须使用以下约定:
- 网络适配器的名称和虚拟网络适配器必须使用
vManagement($intentname)
。 - 此名称区分大小写。
$Intentname
可以是任何字符串,但必须是用于虚拟交换机的相同名称。 定义意向名称时Mgmt
,请确保在Azure 门户中使用此字符串。
若要更新管理虚拟网络适配器名称,请使用以下命令:
$IntentName = "MgmtCompute"
#Rename VMNetworkAdapter for management because during creation, Hyper-V uses the vSwitch name for the virtual network adapter.
Rename-VmNetworkAdapter -ManagementOS -Name "ConvergedSwitch(MgmtCompute)" -NewName "vManagement(MgmtCompute)"
#Rename NetAdapter because during creation, Hyper-V adds the string “vEthernet” to the beginning of the name.
Rename-NetAdapter -Name "vEthernet (ConvergedSwitch(MgmtCompute))" -NewName "vManagement(MgmtCompute)"
3.配置 VLAN ID 以管理所有节点的虚拟网络适配器
创建虚拟交换机和管理虚拟网络适配器后,可以为此适配器指定所需的 VLAN ID。 尽管有不同的选项可将 VLAN ID 分配给虚拟网络适配器,但唯一支持的选项是使用 Set-VMNetworkAdapterIsolation
命令。
配置所需的 VLAN ID 后,可以将 IP 地址和网关分配给管理虚拟网络适配器,以验证它是否与其他节点、DNS、Active Directory 和 Internet 建立连接。
以下示例演示如何将管理虚拟网络适配器配置为使用 VLAN ID 8
而不是默认值:
Set-VMNetworkAdapterIsolation -ManagementOS -VMNetworkAdapterName "vManagement($IntentName)" -AllowUntaggedTraffic $true -IsolationMode Vlan -DefaultIsolationID "8"
4.在部署期间引用管理意向的物理网络适配器
尽管新创建的虚拟网络适配器在通过Azure 门户进行部署时显示为可用,但请务必记住网络配置基于网络 ATC。 这意味着在配置管理或管理和计算意向时,我们仍然需要选择用于该意向的物理网络适配器。
注意
不要为网络意向选择虚拟网络适配器。
相同的逻辑适用于 Azure 资源管理器 模板。 必须指定要用于网络意向的物理网络适配器,并且永远不会指定虚拟网络适配器。
下面是 VLAN ID 的总结注意事项:
# | 注意事项 |
---|---|
1 | 在将计算机注册到 Azure Arc 之前,必须在物理网络适配器上指定 VLAN ID 才能进行管理。 |
2 | 在将计算机注册到 Azure Arc 之前,在需要虚拟交换机时使用特定步骤。 |
3 | 在部署期间,管理 VLAN ID 从主机配置传递到基础结构 VM。 |
4 | 没有用于Azure 门户部署或资源管理器模板部署的 VLAN ID 输入参数。 |
存储的自定义 IP
默认情况下,网络 ATC 会自动从下表中为存储分配 IP 和 VLAN:
存储适配器 | IP 地址和子网 | VLAN |
---|---|---|
pNIC1 | 10.71.1.x | 711 |
pNIC2 | 10.71.2.x | 712 |
pNIC3 | 10.71.3.x | 713 |
但是,如果部署要求不符合这些默认 IP 和 VLAN,则可以使用自己的 IP、子网和 VLAN 进行存储。 仅当使用 ARM 模板部署群集时,此功能才可用,需要在模板中指定以下参数。
- enableStorageAutoIP: 如果未指定此参数,则为 true。 若要在部署期间启用自定义存储 IP,此参数必须设置为 false。
- storageAdapterIPInfo: 此参数具有具有“enableStorageAutoIP”参数的依赖项,在存储自动 IP 参数设置为 false 时始终是必需的。 在 ARM 模板中的“storageAdapterIPInfo”参数中,还需要使用自己的 IP 和子网掩码为每个节点和网络适配器指定 “ipv4Address” 和 “subnetMask” 参数。
- vlanId: 如表中所述,如果不需要更改,此参数将使用网络 ATC 默认 VLAN。 但是,如果这些默认 VLAN 在网络中不起作用,则可以为每个存储网络指定自己的 VLAN ID。
以下 ARM 模板包含两个节点的 Azure 本地实例示例,其中包含用于存储的网络交换机,其中存储 IP 是使用自定义存储 IP 进行自定义 的 2 个节点部署
节点和群集 IP 分配
对于 Azure 本地实例,有两个选项可用于为计算机节点和群集 IP 分配 IP。
支持静态和动态主机配置协议(DHCP)协议。
正确的节点 IP 分配是群集生命周期管理的关键。 在 Azure Arc 中注册节点之前,请确定静态和 DHCP 选项。
基础结构 VM 和服务(如 Arc 资源桥和网络控制器)继续使用管理 IP 池中的静态 IP。 这意味着,即使决定使用 DHCP 将 IP 分配到节点和群集 IP,管理 IP 池仍是必需的。
以下各节讨论每个选项的含义。
静态 IP 分配
如果静态 IP 用于节点,则管理 IP 池用于获取可用的 IP,并在部署期间自动将其分配给群集 IP。
对于不是为管理 IP 池定义的 IP 范围的节点使用管理 IP,这一点很重要。 计算机节点 IP 必须位于定义的 IP 范围的同一子网上。
建议仅为默认网关分配一个管理 IP,并为节点的所有物理网络适配器分配配置的 DNS 服务器。 这可确保创建管理网络意向后 IP 不会更改。 这还可确保节点在部署过程中(包括 Azure Arc 注册期间)保持其出站连接。
为了避免路由问题并识别将用于出站连接和 Arc 注册的 IP,Azure 门户验证是否配置了多个默认网关。
如果在 OS 配置期间创建了虚拟交换机和管理虚拟网络适配器,则必须将该节点的管理 IP 分配给该虚拟网络适配器。
DHCP IP 分配
如果从 DHCP 服务器获取节点的 IP,则也会将动态 IP 用于群集 IP。 基础结构 VM 和服务仍需要静态 IP,这意味着必须从用于节点和群集 IP 的 DHCP 作用域中排除管理 IP 池地址范围。
例如,如果管理 IP 范围定义为 192.168.1.20/24 到基础结构静态 IP 的 192.168.1.30/24,则为子网 192.168.1.0/24 定义的 DHCP 范围必须具有等效于管理 IP 池的排除,以避免与基础结构服务发生 IP 冲突。 我们还建议对节点 IP 使用 DHCP 预留。
创建管理意向后定义管理 IP 的过程涉及使用为网络意向选择的第一个物理网络适配器的 MAC 地址。 然后将此 MAC 地址分配给为管理目的创建的虚拟网络适配器。 这意味着第一个物理网络适配器从 DHCP 服务器获取的 IP 地址与虚拟网络适配器用作管理 IP 的 IP 地址相同。 因此,请务必为节点 IP 创建 DHCP 预留。
如果在云部署期间使用的网络验证逻辑检测到配置中具有默认网关的多个物理网络接口,则会失败。 如果需要将 DHCP 用于主机 IP 分配,则需要预先创建 SET (交换机嵌入式组合) 虚拟交换机和管理虚拟网络适配器,因此只有管理虚拟网络适配器从 DHCP 服务器获取 IP 地址。
群集节点 IP 注意事项
下面是 IP 地址的总结注意事项:
# | 注意事项 |
---|---|
1 | 节点 IP 必须位于定义的管理 IP 池范围的同一子网上,而不管它们是静态地址还是动态地址。 |
2 | 管理 IP 池不得包含节点 IP。 使用动态 IP 分配时使用 DHCP 排除项。 |
3 | 尽可能多地对节点使用 DHCP 预留。 |
4 | 仅节点 IP 和群集 IP 支持 DHCP 地址。 基础结构服务使用管理池中的静态 IP。 |
5 | 创建管理网络意向后,第一个物理网络适配器中的 MAC 地址将分配给管理虚拟网络适配器。 |
代理要求
访问本地基础结构中的 Internet 可能需要代理。 Azure Local 仅支持未经身份验证的代理配置。 鉴于需要在 Azure Arc 中注册节点,必须在注册计算机节点之前将代理配置设置为 OS 配置的一部分。 有关详细信息,请参阅配置代理设置。
Azure Stack HCI OS 具有三个不同的服务(WinInet、WinHTTP 和环境变量),这些服务需要相同的代理配置,以确保所有 OS 组件都可以访问 Internet。 用于节点的同一代理配置会自动传递到 Arc 资源桥 VM 和 AKS,确保它们在部署期间具有 Internet 访问权限。
下面是代理配置的汇总注意事项:
# | 注意事项 |
---|---|
1 | 在 Azure Arc 中注册节点之前,必须完成代理配置。 |
2 | 必须对 WinINET、WinHTTP 和环境变量应用相同的代理配置。 |
3 | 环境检查器可确保代理配置在所有代理组件之间保持一致。 |
4 | Arc 资源桥 VM 和 AKS 的代理配置由业务流程协调程序在部署过程中自动完成。 |
5 | 仅支持未经身份验证的代理。 |
防火墙要求
目前需要在防火墙中打开多个 Internet 终结点,以确保 Azure 本地及其组件能够成功连接到它们。 有关所需终结点的详细列表,请参阅 防火墙要求。
在 Azure Arc 中注册节点之前,必须完成防火墙配置。可以使用环境检查器的独立版本来验证防火墙是否未阻止发送到这些终结点的流量。 有关详细信息,请参阅 Azure 本地环境检查器 来评估 Azure 本地的部署准备情况。
下面是防火墙的总结注意事项:
# | 注意事项 |
---|---|
1 | 在 Azure Arc 中注册节点之前,必须完成防火墙配置。 |
2 | 独立模式下的环境检查器可用于验证防火墙配置。 |
步骤 5:确定网络适配器配置
网络适配器通过网络流量类型(管理、计算和存储)进行限定。 查看 Windows Server 目录时,Windows Server 2022 认证指示适配器符合哪些网络流量。
在购买 Azure 本地计算机之前,必须至少有一个适配器有资格管理、计算和存储,因为 Azure 本地需要所有三种流量类型。 云部署依赖于网络 ATC 为适当的流量类型配置网络适配器,因此使用支持的网络适配器非常重要。
网络 ATC 使用的默认值记录在群集网络设置中。 建议使用默认值。 也就是说,如果需要,可以使用Azure 门户或资源管理器模板替代以下选项:
- 存储 VLAN:将此值设置为存储所需的 VLAN。
- 巨无霸数据包:定义巨无霸数据包的大小。
- 网络直通:如果要为网络适配器禁用 RDMA,请将此值设置为 false。
- 网络直接技术:将此值
RoCEv2
设置为或iWarp
。 - 流量优先级数据中心桥接(DCB):设置符合要求的优先级。 强烈建议使用默认 DCB 值,因为这些值由Microsoft和客户验证。
下面是网络适配器配置的总结注意事项:
# | 注意事项 |
---|---|
1 | 尽可能多地使用默认配置。 |
2 | 必须根据网络适配器配置配置物理交换机。 请参阅 Azure 本地的物理网络要求。 |
3 | 使用 Windows Server 目录确保 Azure 本地版支持网络适配器。 |
4 | 接受默认值时,网络 ATC 会自动配置存储网络适配器 IP 和 VLAN。 这称为存储自动 IP 配置。 在某些情况下,不支持存储自动 IP,需要使用资源管理器模板声明每个存储网络适配器 IP。 |