在 VMM 构造中设置 SDN RAS 网关
本文介绍如何在 System Center Virtual Machine Manager (VMM) 构造中设置软件定义的网络 (SDN) RAS 网关。
SDN RAS 网关是 SDN 中的数据路径元素,可在两个自治系统之间实现站点到站点连接。 具体而言,RAS 网关使用 IPSec、通用路由封装(GRE)或第 3 层转发在远程租户网络与数据中心之间建立站点到站点连接。 了解详细信息。
注意
VMM 2025 和 2022 为 RAS 网关提供双堆栈支持。
注意
- 从 VMM 2019 UR1 开始,一个连接的网络类型更改为“已连接网络”。
- VMM 2019 UR2 及更高版本支持 IPv6。
开始之前
在开始之前,请确保满足以下条件:
- 规划:阅读有关规划软件定义的网络的信息,并查看本文档中的规划拓扑。 该图显示了示例 4 节点设置。 此设置具有三个网络控制器节点(VM)和三个 SLB/MUX 节点的高度可用。 它显示两个租户,其中一个虚拟网络已分解为两个虚拟子网,以模拟 Web 层和数据库层。 基础结构和租户虚拟机都可以在任何物理主机上重新分发。
- 网络控制器:部署 RAS 网关之前,必须先部署网络控制器。
- SLB:若要确保正确处理依赖项,还必须在设置网关之前部署 SLB。 如果配置了 SLB 和网关,则可以使用和验证 IPsec 连接。
- 服务模板:VMM 使用服务模板自动执行 GW 部署。 服务模板支持第 1 代和第 2 代 VM 上的多节点部署。
部署步骤
若要设置 RAS 网关,请执行以下操作:
下载服务模板:下载部署 GW 所需的服务模板。
创建 VIP 逻辑网络:创建 GRE VIP 逻辑网络。 它需要专用 VIP 的 IP 地址池,并将 VIP 分配到 GRE 终结点。 网络存在,用于定义分配给 SDN 构造上运行的网关 VM 的 VIP,以便建立站点到站点 GRE 连接。
注意
若要启用双栈支持,请在创建 GRE VIP 逻辑网络时,将 IPv6 子网添加到网络站点并创建 IPv6 地址池。 (适用于 2022 及更高版本)
导入服务模板:导入 RAS 网关服务模板。
部署网关:部署网关服务实例并配置其属性。
验证部署:配置站点到站点 GRE、IPSec 或 L3,并验证部署。
下载服务模板
- 从 Microsoft SDN GitHub 存储库下载 SDN 文件夹,并将模板从 VMM>模板>GW 复制到 VMM 服务器上的本地路径。
- 将内容提取到本地计算机上的文件夹。 稍后将将它们导入库。
下载包含两个模板:
- EdgeServiceTemplate_Generation 1 VM.xml 模板用于在第 1 代虚拟机上部署 GW 服务。
- EdgeServiceTemplate_Generation 2 VM.xml用于在第 2 代虚拟机上部署 GW 服务。
这两个模板的默认计数均为三个虚拟机,可在服务模板设计器中进行更改。
创建 GRE VIP 逻辑网络
- 在 VMM 控制台中,运行“创建逻辑网络向导”。 输入名称,可以选择提供说明,然后选择“下一步”。
- 在 “设置”中,选择 “一个连接的网络”。 (可选)可以选择“ 创建具有相同名称的 VM 网络”。 此设置允许 VM 直接访问此逻辑网络。 选择由 网络控制器管理,然后选择“ 下一步”。
- 对于 VMM 2019 UR1 及更高版本,在“设置”中选择“已连接网络”,选择“网络控制器管理”,然后选择“下一步”。
- 在“设置”中,选择“已连接网络”,选择“网络控制器管理”,然后选择“下一步”。
在 网络站点中,指定设置:
下面是示例值:
- 网络名称:GRE VIP
- 子网:31.30.30.0
- 掩码:24
- 中继上的 VLAN ID:NA
- 网关:31.30.30.1
- 在“摘要”中,查看设置并完成向导。
若要使用 IPv6,请将 IPv4 和 IPV6 子网添加到网络站点。 下面是示例值:
- 网络名称:GRE VIP
- 子网:FD4A:293D:184F:382C::
- 掩码:64
- 中继上的 VLAN ID:NA
- 网关:FD4A:293D:184F:382C::1
在“摘要”中,查看设置并完成向导。
若要使用 IPv4,请将 IPv4 子网添加到网络站点并创建 IPv4 地址池。 下面是示例值:
- 网络名称:GRE VIP
- 子网:
- 面具:
- 中继上的 VLAN ID:NA
- 网关:
若要使用 IPv6,请将 IPv4 和 IPv6 子网都添加到网络站点并创建 IPv6 地址池。 下面是示例值:
- 网络名称:GRE VIP
- 子网:FD4A:293D:184F:382C::
- 掩码:64
- 中继上的 VLAN ID:NA
- 网关:FD4A:293D:184F:382C::1
在“摘要”中,查看设置并完成向导。
为 GRE VIP 地址创建 IP 地址池
注意
从 VMM 2019 UR1 及更高版本,可以使用“创建逻辑网络”向导创建 IP 地址池。
注意
可以使用“创建逻辑网络”向导创建 IP 地址池。
- 右键单击 GRE VIP 逻辑网络 >“创建 IP 池”。
- 输入池的名称和可选说明,并检查是否选择了 VIP 网络。 选择下一步。
- 接受默认网络站点,然后选择“ 下一步”。
- 为范围选择起始和结束 IP 地址。 在可用子网的第二个地址上启动范围。 例如,如果可用子网从 .1 到 .254,则从 .2 开始范围。
- 在 为负载均衡器 VIP 保留的 IP 地址框中,输入子网中的 IP 地址范围。 这必须与用于开始和结束 IP 地址的范围匹配。
- 无需提供网关、DNS 或 WINS 信息,因为此池仅用于通过网络控制器为 VIP 分配 IP 地址。 选择“下一步”以跳过这些屏幕。
- 在“摘要”中,查看设置并完成向导。
- 如果已创建 IPv6 子网,请创建单独的 IPv6 GRE VIP 地址池。
- 为范围选择起始和结束 IP 地址。 在可用子网的第二个地址上启动范围。 例如,如果可用子网从 .1 到 .254,则从 .2 开始范围。 若要指定 VIP 范围,请勿使用 IPv6 地址的缩短形式; 使用 2001:db8:0:200:0:0:7 格式,而不是 2001:db8:0:200::7。
- 在 为负载均衡器 VIP 保留的 IP 地址框中,输入子网中的 IP 地址范围。 这必须与用于开始和结束 IP 地址的范围匹配。
- 无需提供网关、DNS 或 WINS 信息,因为此池仅用于通过网络控制器为 VIP 分配 IP 地址。 选择“下一步”以跳过这些屏幕。
- 在“摘要”中,查看设置并完成向导。
导入服务模板
- 选择 库>导入模板。
- 浏览到服务模板文件夹。 例如,选择“EdgeServiceTemplate Generation 2.xml”文件。
- 导入服务模板时更新环境的参数。
注意
库资源是在网络控制器部署期间导入的。
- WinServer.vhdx:选择之前在网络控制器部署期间准备和导入的虚拟硬盘驱动器映像。
- EdgeDeployment.CR:映射到 VMM 库中的 EdgeDeployment.cr 库资源。
在 “摘要 ”页上,查看详细信息并选择“ 导入”。
注意
可以自定义服务模板。 了解详细信息。
部署网关服务
若要启用 IPv6,请在加入网关服务时选中“ 启用 IPv6 ”复选框,然后选择之前创建的 IPv6 GRE VIP 子网。 此外,选择公共 IPv6 池并提供公共 IPv6 地址。
此示例使用第 2 代模板。
选择 EdgeServiceTemplate Generation2.xml 服务模板,然后选择“ 配置部署”。
输入名称,然后选择服务实例的目标。 目标必须映射到包含以前为网关部署配置的主机的主机组。
在 “网络设置”中,将管理网络映射到管理 VM 网络。
注意
映射完成后会显示“ 部署服务 ”对话框。 VM 实例最初为 Red 是正常的。 选择“刷新预览”以自动查找适用于 VM 的主机。
在“配置部署”窗口的左侧,配置以下设置:
- AdminAccount。 必需。 选择将用作网关 VM 上的本地管理员的运行方式帐户。
- 管理网络。 必需。 选择为主机管理创建的管理 VM 网络。
- 管理帐户。 必需。 选择有权将网关添加到与网络控制器关联的 Active Directory 域的运行方式帐户。 这可以是部署网络控制器时用于 MgmtDomainAccount 的同一帐户。
- FQDN。 必需。 网关的 Active Directory 域的 FQDN。
选择“部署服务”以开始服务部署作业。
注意
部署时间因硬件而异,但通常介于 30 到 60 分钟之间。 如果网关部署失败,请在重试部署之前删除所有主机>服务中失败的服务实例。
如果未使用批量许可的 VHDX(或者未使用应答文件提供产品密钥),则在 VM 预配期间,部署将在产品密钥页停止。 需要手动访问 VM 桌面,然后输入密钥或跳过该密钥。
如果要横向扩展或横向扩展已部署的 SLB 实例,请阅读此 博客。
网关限制
以下是 NC 托管网关的默认限制:
- MaxVMNetworksSupported= 50
- MaxVPNConnectionsPerVMNetwork= 10
- MaxVMSubnetsSupported= 550
- MaxVPNConnectionsSupported= 250
注意
对于 SDNv2 虚拟化网络,会为每个 VM 网络创建内部路由子网。 MaxVMSubnetsSupported 限制包括为 VM 网络创建的内部子网。
可以 替代为网络控制器托管网关设置的默认限制 。 但是,将限制重写为更高的数字可能会影响网络控制器的性能。
替代网关限制
若要替代默认限制,请将替代字符串追加到网络控制器服务连接字符串并在 VMM 中更新。
- MaxVMNetworksSupported= ,后跟可与此网关一起使用的 VM 网络数。
- MaxVPNConnectionsPerVMNetwork= 后跟可以使用此网关为每个 VM 网络创建的 VPN 连接数。
- MaxVMSubnetsSupported= 后跟可与此网关一起使用的 VM 网络子网数。
- MaxVPNConnectionsSupported= 后跟可与此网关一起使用的 VPN 连接数。
示例:
若要将可用于网关的最大 VM 网络数替代为 100,请更新连接字符串,如下所示:
serverurl=https://NCCluster.contoso.com;servicename=NC_VMM_RTM; MaxVMNetworksSupported==100
配置网关管理器角色
部署网关服务后,可以配置属性并将其与网络控制器服务相关联。
选择 Fabric>网络服务 以显示已安装的网络服务列表。 右键单击网络控制器服务 >“属性”。
选择“服务”选项卡,然后选择“网关管理器角色”。
在“服务信息”下找到“关联服务”字段,然后选择“浏览”。 选择之前创建的网关服务实例,然后选择“ 确定”。
选择网络控制器将用于访问网关虚拟机的运行方式帐户。
注意
运行方式帐户必须在网关 VM 上拥有管理员权限。
在 GRE VIP 子网中,选择之前创建的 VIP 子网。
- 在 公共 IPv4 池中,选择在 SLB 部署期间配置的池。 在 公共 IPv4 地址中,提供上一个池中的 IP 地址,并确保不要从范围中选择最初的三个 IP 地址。
若要启用 IPv4 支持,请在 公共 IPv4 池中选择在 SLB 部署期间配置的池。 在 公共 IPv4 地址中,提供上一个池中的 IP 地址,并确保不要从范围中选择最初的三个 IP 地址。
若要启用 IPv6 支持,请从网络控制器属性>服务中选择“启用 IPv6”复选框,选择之前创建的 IPv6 GRE VIP 子网,并分别输入公共 IPv6 池和公共 IPv6 地址。 此外,选择将分配到网关 VM 的 IPv6 前端子网。
在网关容量中,配置容量设置。
网关容量(Mbps)表示预期超出网关 VM 的正常 TCP 带宽。 必须基于使用的基础网络速度设置此参数。
IPsec 隧道带宽限制为网关容量的 (3/20)。 这意味着,如果网关容量设置为 1000 Mbps,则等效的 IPsec 隧道容量将限制为 150 Mbps。
注意
带宽限制是入站带宽值和出站带宽值的总和。
GRE 和 L3 隧道的等效比率分别为 1/5 和 1/2。
在“节点”中 为故障字段预留的备份配置预留节点数。
若要配置单个网关 VM,请选择每个 VM 并选择 IPv4 前端子网,指定本地 ASN,并选择性地为 BGP 对等互连添加对等互连设备信息。
注意
如果计划使用 GRE 连接,则必须配置网关 BGP 对等互连。
部署的服务实例现在与网关管理器角色相关联。 必须看到它下面列出的网关 VM 实例。
在网关容量中,配置容量设置。
网关容量(Mbps)表示预期超出网关 VM 的正常 TCP 带宽。 必须基于使用的基础网络速度设置此参数。
IPsec 隧道带宽限制为网关容量的 (3/20)。 这意味着,如果网关容量设置为 1000 Mbps,则等效的 IPsec 隧道容量将限制为 150 Mbps。
注意
带宽限制是入站带宽值和出站带宽值的总和。
GRE 和 L3 隧道的等比分别为 1/5 和 1/2。
在“节点”中 为故障字段预留的备份配置预留节点数。
若要配置单个网关 VM,请选择每个 VM 并选择 IPv4 前端子网,指定本地 ASN,并选择性地为 BGP 对等互连添加对等互连设备信息。
注意
如果计划使用 GRE 连接,则必须配置网关 BGP 对等互连。
部署的服务实例现在与网关管理器角色相关联。 必须看到它下面列出的网关 VM 实例。
验证部署
部署网关后,可以配置 S2S GRE、S2S IPSec 或 L3 连接类型,并对其进行验证。 有关详细信息,请参阅以下内容:
有关连接类型的详细信息,请参阅 此内容。
从 PowerShell 设置流量选择器
下面是使用 VMM PowerShell 设置流量选择器的过程。
使用以下参数创建流量选择器。
注意
使用的值只是示例。
$t= new-object Microsoft.VirtualManager.Remoting.TrafficSelector $t.Type=7 // IPV4=7, IPV6=8 $t.ProtocolId=6 // TCP =6, reference: https://en.wikipedia.org/wiki/List_of_IP_protocol_numbers $t.PortEnd=5090 $t.PortStart=5080 $t.IpAddressStart=10.100.101.10 $t.IpAddressEnd=10.100.101.100
使用 Add-SCVPNConnection 或 Set-SCVPNConnection 的 -LocalTrafficSelectors 参数配置上述流量选择器。
从 SDN 构造中删除网关
使用 以下步骤 从 SDN 构造中删除网关。