在 VMM 构造中设置 SDN 软件负载均衡器

本文介绍如何在软件定义的网络 (SDN) 中部署软件负载均衡器 (SLB)。

SLB 允许在虚拟网络资源之间均匀分配租户和租户客户网络流量,以便多个服务器可以托管相同的工作负荷,以提供高可用性和可伸缩性。 了解详细信息

可以使用 VMM 部署网络控制器和软件负载均衡器。 设置 SLB 后,可以在 SDN 基础结构中使用多路复用和 NAT 功能。

VMM 2022 为 SLB 提供双栈支持。

注意

  • 从 VMM 2019 UR1 开始,一个连接的网络类型更改为“已连接网络”
  • VMM 2019 UR2 及更高版本支持 IPv6。

开始之前

确保以下信息:

  • 规划:阅读有关规划软件定义的网络的信息,并查看本文档中的规划拓扑。 该图显示了示例 4 节点设置。 此设置具有三个网络控制器节点(VM)和三个 SLB/MUX 节点的高度可用。 它显示两个租户,其中一个虚拟网络已分解为两个虚拟子网,以模拟 Web 层和数据库层。 基础结构和租户虚拟机都可以在任何物理主机上重新分发。
  • 网络控制器:必须在 VMM 构造中部署 SDN 网络控制器 ,以便在设置负载均衡之前运行计算和网络基础结构。
  • SSL 证书:若要导入 SLB 服务模板,需要准备 SSL 证书。 可在网络控制器部署期间使用证书。 若要使用在 SLB 的网络控制器部署中准备的证书,请右键单击该证书,并在不使用密码的情况下导出该证书。CER 格式。 将其放在设置网络控制器时创建的 NCCertificate.cr 文件夹中。
  • 服务模板:VMM 使用服务模板自动执行 SLB 部署。 服务模板支持第 1 代和第 2 代 VM 上的多节点部署。
  • SLB VM:所有 SLB 虚拟机都必须运行安装了最新修补程序的 Windows Server 2016 或更高版本。
  • HNV 网络:确保在 NC 验证过程中创建了提供程序 HNV 网络。 了解详细信息

部署步骤

  1. 准备 SSL 证书:将证书放在 VMM 库中。
  2. 下载服务模板:下载部署 SLB/MUX 所需的服务模板。
  3. 创建传输逻辑网络:需要创建逻辑网络:
    • 用于镜像传输(前端)物理网络的逻辑网络。
    • 专用虚拟 IP(VIP)和公共 VIP 网络,用于将 VIP 分配到 SLB 服务。
  4. 创建专用和公共 VIP 逻辑网络:专用虚拟 IP(VIP)和公共 VIP 网络,以将 VIP 分配到 SLB 服务。
  5. 导入服务模板:导入和自定义 SLB 服务模板。
  6. 部署 SLB:将 SLB 部署为 VMM 服务并配置服务属性。
  7. 验证部署:在 SLB/MUX 实例与 BGP 路由器之间配置 BGP 对等互连,将公共 IP 地址分配给租户 VM 或服务,并从网络外部访问 VM 或服务。

准备证书

确保将 NC 部署期间创建的 SSL 证书复制到 NCCertificate.cr 文件夹中。

下载服务模板

  1. Microsoft SDN GitHub 存储库下载 SDN 文件夹,并将模板从 VMM>模板>SLB 复制到 VMM 服务器上的本地路径。
  2. 将内容提取到本地计算机上的文件夹。 稍后将将它们导入库。

下载包含两个模板:

  • SLB 生产第 1 代VM.xml模板用于在第 1 代虚拟机上部署 SLB 服务。
  • SLB 生产第 2 代VM.xml模板用于在第 2 代虚拟机上部署 SLB 服务。

这两个模板的默认计数均为三个虚拟机,可在服务模板设计器中进行更改。

建议对 SLB 部署使用简化的 SDN 拓扑(两个物理网络)。 使用简化的 SDN 拓扑模板时,跳过创建传输逻辑网络。

创建传输逻辑网络

  1. 打开“创建逻辑网络向导”,并输入名称和可选说明。
  1. “设置”中,选择 “一个连接的网络”。 选择“ 创建具有相同名称 ”框的 VM 网络,以允许虚拟机直接访问此逻辑网络,并由 网络控制器管理。
  • 对于 VMM 2019 UR1 及更高版本,在“设置”中选择已连接网络”,然后选择“网络控制器管理”。
  1. “设置”中,选择“ 已连接网络”,然后选择“ 由网络控制器管理”。
  1. “网络站点”中,添加子网的网络站点信息。
  2. 查看摘要信息并完成逻辑网络向导。

为传输逻辑网络创建 IP 地址池

这是 IP 地址池,其中将 DIP 分配到 SLB/MUX 虚拟机和 BGP 对等虚拟机(如果已部署)。

这是 IP 地址池,其中将 DIP 分配到 SLB/MUX 虚拟机和 BGP 对等虚拟机(如果已部署)。

从 VMM 2019 UR1 及更高版本,可以使用“创建逻辑网络”向导创建 IP 地址池

可以使用“创建逻辑网络”向导创建 IP 地址池

注意

  • 确保使用与传输网络 IP 地址空间对应的 IP 地址范围。 不要在要创建的 IP 池中包含子网的第一个 IP 地址。 例如,如果可用子网从 .1 到 .254,则从 .2 开始范围。
  • 创建传输逻辑网络后,请确保将此逻辑网络与在网络控制器部署期间创建的管理交换机上行端口配置文件相关联。

创建 IP 地址池

  1. 右键单击逻辑网络 >“创建 IP 池”

  2. 提供 IP 池的名称和可选说明,并确保选择了正确的逻辑网络。

  3. “网络站点”中,选择此 IP 地址池将服务的子网。 如果作为 HNV 提供程序网络的一部分有多个子网,则需要为每个子网创建静态 IP 地址池。 如果只有一个站点(例如,例如示例拓扑),则只需选择“ 下一步”。

  4. 在“IP 地址范围”中,配置起始和结束 IP 地址。 不要使用可用子网的前三个 IP 地址。 例如,如果可用子网从 .1 到 .254,请从 .4 或更高版本开始范围。

  5. 接下来,配置默认网关地址。 选择“默认网关”框旁边的“插入”,输入地址,并使用默认指标。 (可选)配置 DNS 和 WINS。

  6. 查看摘要信息,然后选择“完成以完成向导。

    注意

    确保将逻辑网络与管理交换机上行端口配置文件相关联。

创建专用和公共 VIP 逻辑网络

需要专用 VIP 地址池才能将 VIP 和公共 VIP 分配给 SLB 管理器服务。

注意

创建两者的过程相似,但存在一些差异。

创建专用 VIP

  1. 启动 “创建逻辑网络向导”。 为此网络输入名称和可选说明。
  1. “设置”中,选择 “一个连接的网络”。 选择“ 创建具有相同名称的 VM 网络”,以允许虚拟机直接访问此逻辑网络。 选择“ 由网络控制器管理”。
  1. “设置”中,选择 “一个连接的网络”。 选择“ 创建具有相同名称的 VM 网络”,以允许虚拟机直接访问此逻辑网络。 选择“ 由网络控制器管理”。 对于 UR1 及更高版本,在“设置”中选择“已连接网络”,然后选择“由网络控制器管理”。 专用 VIP
  1. 网络站点中,为专用 VIP 逻辑网络添加网络站点信息。
  2. 查看摘要信息,并完成向导。

创建公共 VIP

  1. 启动 “创建逻辑网络向导”。 为此网络输入名称和可选说明。
  1. “设置”中,选择 “一个连接的网络”。 选择“ 创建具有相同名称的 VM 网络”,以允许虚拟机直接访问此逻辑网络。 选择“ 由网络控制器 和公共 IP 地址网络管理”。
  1. “设置”中,选择 “一个连接的网络”。 选择“ 创建具有相同名称的 VM 网络”,以允许虚拟机直接访问此逻辑网络。 选择“ 由网络控制器管理”。

    对于 UR1 和更高版本,在“设置”中选择“已连接网络”,然后选择“网络控制器”和公共 IP 地址网络

    公共 VIP 的屏幕截图。

  1. “网络站点”中,为公共 VIP 逻辑网络添加网络站点信息。
  2. 查看摘要信息并完成向导。

为专用和公共 VIP 网络创建 IP 地址池

  1. 右键单击专用 VIP 逻辑网络 >“创建 IP 池”
  2. 提供 IP 池的名称和可选说明,并确保选择了正确的逻辑网络。
  3. 接受默认网络站点,然后选择“ 下一步”。
  1. 在“IP 地址范围”中,配置起始和结束 IP 地址

    注意

    不要使用可用子网的第一个 IP 地址。 例如,如果可用子网从 .1 到 .254,请从 .2 或更高版本开始范围。

  1. 在“IP 地址范围”中,配置起始和结束 IP 地址。 如果使用 IPv6 地址空间,请指定 IPv6 地址池。

    注意

    不要使用可用子网的第一个 IP 地址。 例如,如果可用子网从 .1 到 .254,请从 .2 或更高版本开始范围。

    单个 VIP 范围内允许的最大地址数为 1024。

  1. 在“IP 地址范围”中,配置起始和结束 IP 地址。 如果使用的是 IPv6 地址空间,请将 IPv6 子网添加到网络站点并创建 IPv6 地址池。

    注意

    • 载入 SLB 时添加 IPv6 地址池。
    • 不要使用可用子网的第一个 IP 地址。 例如,如果可用子网从 .1 到 .254,请从 .2 或更高版本开始范围。
    • 单个 VIP 范围内允许的最大地址数为 1024。
  1. 为负载均衡器 VIP 保留的 IP 地址中,输入子网中的 IP 地址范围。 它必须与指定的开始和结束地址匹配。
  2. 无需提供网关、DNS 或 WINS 信息,因为此池仅用于通过网络控制器为 VIP 分配 IP 地址。 选择“下一步以跳过这些屏幕。 输入地址并使用默认指标。 (可选)配置 DNS 和 WINS。
  3. 查看摘要信息,然后选择“完成以完成向导。
  4. 重复公共 VIP 逻辑网络的过程;这一次,请输入公用网络的 IP 地址范围。

导入服务模板

将服务模板导入 VMM 库。 在本示例中,我们将导入第 2 代模板。

  1. 选择 >导入模板

  2. 浏览到服务模板文件夹,选择 SLB 生产第 2 代VM.xml 文件。

  3. 导入服务模板时更新环境的参数。

    注意

    库资源是在网络控制器部署期间导入的。

    • WinServer.vhdx:选择之前在网络控制器部署期间准备和导入的虚拟硬盘驱动器映像。
    • NCCertificate.cr:此库资源包含用于设置网络控制器的脚本。 映射到 VMM 库中的 NCCertificate.cr 库资源。
    • EdgeDeployment.cr:映射到 VMM 库中的 EdgeDeployment.cr 库资源。
  4. 请记住,必须已复制 。之前创建的 CER 证书已添加到 NCCertificate.cr 文件夹。

  5. “摘要 ”页上,查看详细信息并选择“ 导入”。

    注意

    可以自定义服务模板。 了解详细信息

部署 SLB 服务

现在部署 SLB/MUX 服务实例。

  1. 选择 SLB Production Generation 2 VM.xml 服务模板 >“配置部署”。 输入服务实例的名称和可选目标。 目标必须映射到包含已配置的主机的主机组。

  2. “网络设置” 部分中,将 TransitNetwork 映射到传输 VM 网络,并将 ManagementNetwork 映射到管理 VM 网络。

    注意

    • 使用简化的拓扑模板时,传输网络不适用。
    • 映射完成后会显示“ 部署服务 ”屏幕。 虚拟机实例最初为 Red 是正常的。 选择“刷新预览以自动查找适合虚拟机的主机。
  3. 在“配置部署”窗口的左侧,按下表中详述配置设置:

    设置 要求 描述
    传输网络 必须 传输 VM 网络。
    LocalAdmin 必须 在环境中选择一个运行方式帐户,该帐户将用作虚拟机上的本地管理员。 用户名必须是管理员。
    管理网络 必须 选择为主机管理创建的管理 VM 网络。
    MgmtDomainAccount 必须 选择有权将 SLB/MUX 虚拟机添加到与网络控制器关联的 Active Directory 域的运行方式帐户。 这可以是部署网络控制器时在 MgmtDomainAccount 中使用的同一帐户。
    MgmtDomainFQDN 必须 SLB/MUX 虚拟机将加入的 Active Directory 域的 FQDN。
    SelfSignedConfiguration 必须 如果正在使用的证书是自签名的,则指定 True
  4. 配置这些设置后,选择“部署服务以开始服务部署作业。 部署时间因硬件而异,但通常介于 30 到 60 分钟之间。

  5. 如果不使用批量许可的 VHDX,或者 VHDX 没有应答文件中的产品密钥,则在 SLB/MUX VM 预配期间,部署将在产品密钥页中停止。 需要手动访问 VM 桌面,然后跳过或输入产品密钥。

  6. 服务部署作业完成后,请验证服务是否显示在 VM 和服务服务>>VM 网络信息中。 右键单击该服务并验证状态是否已“属性”中部署。

部署后,验证该服务是否显示在“所有主机>服务>VM 服务网络信息”中。 右键单击 SLB MUX 服务 >“属性”,并将状态指定为“已部署”。 如果 SLB/MUX 部署失败,请确保在尝试再次部署 SLB 之前删除失败的服务实例。

如果要横向扩展或横向扩展已部署的软件负载均衡器服务实例, 请阅读此博客

注意

部署 SLB 服务后,在连接到所有 SLB MUX VM 上的传输 VM 网络的虚拟网络适配器上禁用 DNS 注册。

配置 SLB 角色和 SLB/MUX 属性

注意

在继续之前,请确保创建 HNV PA 逻辑网络。

部署服务后,可以配置其属性。 需要将部署的 SLB 服务实例与网络控制器相关联,然后在 SLB/MUX 实例与 TOR 交换机或 BGP 路由器对等机之间配置 BGP 对等互连。

  1. 选择 Fabric>网络服务。 右键单击网络控制器服务 >“属性”。
  2. 选择“服务”选项卡 >“负载均衡器角色”>“关联服务”>“浏览”。
  3. 选择前面创建的 SLB/MUX 服务实例。 选择运行方式帐户。
  4. 对于管理 IP 地址,请使用前面创建的专用 VIP 池中的 IP 地址。 (可选)指定要从出站 NAT 中排除的 IP 地址范围。 在 SLBM VIP 池,选择专用和公共 VIP 池,以便发布到 NC。
  5. 选择向导中负载均衡器角色列出的 SLB/MUX 实例。 输入数据中心的本地 ASN,以及 SLB/MUX 可以与之对等的设备或 BGP 对等方的详细信息。
  6. 选择“确定”

SLB 服务实例现在与 SLBM 服务关联,并且必须看到 SLB/MUX 虚拟机实例,其中包含负载均衡器角色列出的所有设置。

验证部署

部署 SLB/MUX 后,可以通过配置 SLB/MUX 实例与 BGP 路由器之间的 BGP 对等互连、将公共 IP 地址分配给租户虚拟机或服务以及从网络外部访问租户虚拟机或服务来验证部署。

使用以下过程进行验证

  1. 在向导中输入外部路由器详细信息。 例如:

    IP 地址的屏幕截图。

  2. 选择“确定”以完成 SLB/MUX 服务实例配置。

  3. 选中“作业”窗口,验证具有所需配置的 Update Fabric 角色,并将服务实例与构造角色作业相关联是否已成功完成。

  4. 若要完成 BGP 对等互连操作,需要将 BGP 配置为与路由器上的 SLB/MUX 实例对等互连。 如果使用硬件路由器,则需要查阅供应商的文档,了解如何为该设备设置 BGP 对等互连。

    还需要知道之前部署的 SLB/MUX 实例的 IP 地址。 为此,可以登录到 SLB MUX 虚拟机并从命令提示符运行 ipconfig /all ,也可以从 VMM 控制台获取 IP 地址。

    注意

    输入来自传输网络的 IP。

  5. 如果在对等互连完成后创建新的 VIP 池,则需要使用 VMM 控制台播发所有 VIP 地址池。

验证后,可以开始使用 SLB 进行负载均衡。 有关相关信息,请参阅 对网络流量 进行负载均衡并 配置 NAT 规则

从 SDN 构造中删除软件负载均衡器

使用 以下步骤 从 SDN 构造中删除 SLB。

后续步骤

创建 RAS 网关