Citrix ADC

配置第 3 层聚类

了解 L3 群集

扩展高可用性部署和提高客户端流量跨不同网络的可扩展性的需求是建立 L3 群集的指导。利用 L3 群集,您可以跨单个子网(L2 群集)对 Citrix ADC 设备进行分组。

L3 群集也称为“独立网络配置 (INC) 模式下的群集”。在 L3 群集部署中,同一网络中的群集节点被分组为一个节点组。L3 群集使用 GRE 隧道跨网络引导数据包. L3 群集中的心跳消息将被路由。

本文档包括以下详细信息:

  • 体系结构
  • 示例

体系结构

L3 群集体系结构包括以下组件:

  • 节点组。如下图所示,来自每个网络(n1、n2)和(n3、n4)的群集节点将被分组为一个节点组。这些节点组将终止到网络两端的第 3 层交换机。
    • 群集通过群集节点和客户端连接设备之间的物理连接与客户端通信。这些物理连接的逻辑分组称为客户端数据平面。
    • 群集通过群集节点和服务器端连接设备之间的物理连接与服务器通信。这些物理连接的逻辑分组称为服务器数据平面。
  • 背板开关。同一网络中的群集节点通过使用群集背板相互通信。背板是一组接口,其中每个节点的一个接口连接到一个公共交换机(称为群集背板交换机)。
  • GRE 隧道。L3 群集中的节点之间的数据包通过未加密的 GRE 隧道进行交换,该隧道使用源节点和目标节点的 NSIP 地址进行路由。属于不同网络的节点的转向机制会发生变化。数据包通过 GRE 隧道引导到另一个子网上的节点,而不是重写 MAC。

群集架构

示例

考虑 L3 群集部署的示例,其中包括以下内容:

  • 三个 Citrix ADC 设备(n1、n2 和 n3)节点被分组到 Nodegroup1 中。
  • 同样,节点 n4 和 n5 分组在节点组 2 中。在第三个网络中,有两个节点组。节点组 3 包括 n6 和 n7,节点组 4 包括 n8 和 n9。
  • 属于同一网络的 Citrix ADC 设备合并为节点组。

群集部署

配置 L3 群集之前需要考虑的事项

在 Citrix ADC 设备上配置 L3 群集之前,请考虑以下几点:

  • 配置 L3 子网时,底板不是必需的。如果未指定底板,则节点不会进入底板故障状态。

    注意

    如果 L2 网络中有一些群集节点,则必须在群集背板上启用转向。如果未启用转向,节点将进入底板故障状态。

  • L3 群集中的外部流量分布仅支持等成本多路径 (ECMP)。
  • 在 L3 群集部署中禁用转向时,将处理以下参数:
    • ICMP 错误
    • 不成体系
    • 条纹 SNIP 或 MIP
  • 实体(路由、route6 和 pbr6)可以绑定到配置节点组。pbr
  • VLAN、RNAT 和 IP 隧道无法绑定到配置节点组。
  • 配置节点组必须始终具有属性 STRICT “是。
  • 不得通过 “添加群集节点” 命令将群集节点添加到配置节点组。
  • “clear config extended+”命令不会清除实体(route、route6、PBR、pb6、RNAT、IP tunnel、ip6tunnel)。配置 add cluster instance –INC enabled 命令时必须清除这些实体。

配置 L3 群集

在 L3 群集配置中,cluster 命令具有不同的属性要配置,这些属性基于节点和节点组。除了 IPv4 配置文件之外,L3 群集配置文件还包括 IPv6 配置文件。

在 Citrix ADC 设备上配置 L3 群集包括以下任务:

  • 创建群集实例
  • 在 L3 群集中创建节点组
  • 将 Citrix ADC 设备添加到群集和具有节点组的组
  • 将群集 IP 地址添加到节点
  • 启用集群实例
  • 保存配置
  • 将节点添加到现有节点组
  • 在 L3 群集中创建节点组
  • 将新节点分组到新创建的节点组
  • 将节点加入群集

使用命令行配置以下内容

  • 使用 CLI 创建集群实例

    add cluster instance <clid> -inc <ENABLED DISABLED> -processLocal <ENABLED DISABLED>
  • 在 L3 群集中创建节点组

    add cluster nodegroup <ng>

  • 将 Citrix ADC 设备添加到群集并与节点组关联

    add cluster node <nodeid> <nodeip> -backplane <interface_name> node group <ng>

  • 在此节点上添加群集 IP 地址

    add ns ip <IPAddress> <netmask> -type clip

  • 启用集群实例

    enable cluster instance <clId>

  • 保存配置

    save ns config

  • 热重新启动设备

    reboot -warm

  • 将新节点添加到现有节点组

    add cluster node \<nodeid\> \<nodeip\> -nodegroup \<ng\>

  • 在 L3 群集中创建新的节点组

    add cluster nodegroup <ng>

  • 将新节点分组到新创建的节点组

    add cluster node \<nodeid\> \<nodeip\> -nodegroup \<ng\>

  • 将节点加入群集

    \*\*join cluster –clip\*\* <ip_addr> -password <password>**

    add cluster instance 1 –inc ENABLED –processLocal ENABLED

       Done

注意

对于 L3 群集,必须启用 “inc” 参数。

    add cluster nodegroup ng1

       Done

    > add cluster node 0 1.1.1.1 –state ACTIVE -backplane 0/1/1 –nodegroup ng1

       Done

    > add ns ip 1.1.1.100 255.255.255.255 –type clip

       Done

    > enable cluster instance 1

       Done

    > save ns config

       Done

    > add cluster node 1 1.1.1.2 –state ACTIVE –nodegroup ng1

       Done

    > add cluster nodegroup ng2

       Done

    > add cluster node 4 2.2.2.1 –state ACTIVE –nodegroup ng2

       Done

    > add cluster node 5 2.2.2.2 –state ACTIVE –nodegroup ng2

       Done

    > join cluster -clip 1.1.1.100 -password nsroot

第 3 层群集的广告群集 IP 地址

配置要通告给上游路由器的群集 IP 地址,使群集配置可从任何子网访问。群集 IP 地址通过节点上配置的动态路由协议作为内核路由进行通告。

通告群集 IP 地址包括以下任务:

  • 启用群集 IP 地址的主机路由选项。主机路由选项将群集 IP 地址推送到 ZeBOS 路由表,以便通过动态路由协议进行内核路由重新分发。
  • 在节点上配置动态路由协议。动态路由协议将群集 IP 地址通告给上游路由器。有关配置动态路由协议的详细信息,请参阅配置动态路由

使用 CLI 启用群集 IP 地址的主机路由选项

在命令提示符下,键入:

-  \*\*add nsip\*\* <IPAddress> <netmask> -\*\*hostRoute ENABLED\*\*
-  \*\*show nsip\*\* <IPAddress>

    > add ns ip 10.102.29.60 255.255.255.255 -hostRoute ENABLED

       Done

L3 群集上的部分条带化配置

L3 群集上的已发现和部分条带化的配置与 L2 群集略有不同。配置可能因节点而异,因为节点驻留在不同的子网上。网络配置可以在 L3 群集中特定于节点,因此您必须根据下面提到的参数配置斑点或部分条带化配置。

要在 L3 群集上的 Citrix ADC 设备上配置斑点的部分条带化配置,请执行以下任务:

  • 将群集所有者组添加到 IPv4 静态路由表
  • 将群集所有者组添加到 IPv6 静态路由表
  • 将群集所有者组添加到基于 IPv4 策略的路由 (PBR)
  • 将群集所有者组添加到 IPv6 PBR
  • 添加 VLAN
  • 将 VLAN 绑定到群集节点组的特定所有者组

使用命令行配置以下内容

  • 将群集所有者组添加到 Citrix ADC 设备的 IPv4 静态路由表

    add route <network> <netmask> <gateway> -owner group <ng>

  • 将群集所有者组添加到 Citrix ADC 设备的 IPv6 静态路由表

    add route6 <network> -owner group <ng>

  • 将群集所有者组添加到 IPv4 PBR

    add pbr <name> <action> -owner group <ng>

  • 将群集所有者组添加到 IPv6 PBR

    add pbr6 <name> <action> -owner group <ng>

  • 添加 VLAN

    add vlan <id>

  • 将 VLAN 绑定到群集节点组的特定所有者组

    bind vlan \<id\> -ifnum – \[IPAddress \<ip\_addr | ipv6\_addr |\> \[-owner group \<ng\>\]

    以下命令是斑点和部分条带配置的示例示例,可以使用 CLI 进行配置。

    > add route 10.102.29.0 255.255.255.0 10.102.29.2 –ownergroup ng2

        Done

    > add route6 fe80::9404:60ff:fedd:a464/64 –ownergroup ng1

        Done

    > add pbr pbr1 allow –ownergroup ng1

        Done

    > add pbr6 pbr2 allow –ownergroup ng2

        Done

    > add vlan 2

        Done

    > bind vlan 2 –ifnum 1/2 –[IPAddress 10.102.29.80 | fe80::9404:60ff:fedd:a464/64-ownergroup ng1

        Done

配置节点组

在 L3 群集中,要在多个节点组上复制同一组配置,请使用以下命令:

使用命令行配置以下内容

  • 将 IPv4 静态路由添加到 Citrix ADC 设备的路由表

    add route <network> <netmask> <gateway> -ownerGroup <ng>

示例配置:

add route 0 0 10.102.53.1 –ownerGroup ng1

add route 0 0 10.102.53.1 –ownerGroup ng2

您定义了一个新的节点组 “all” 来支持上述配置,并且必须配置以下命令:

使用命令行配置以下内容

  • 使用严格参数向集群添加新的节点组

    add cluster node group** <name> -strict <YES NO>
  • 将群集节点或实体绑定到给定节点组

    bind cluster nodegroup <name> -node <nodeid>

  • 将 IPv4 静态路由添加到所有者组

    add route <network> <netmask> <gateway> -ownerGroup <ng>

示例配置:

add cluster nodegroup all –strict YES

bind cluster nodegroup all –node 1

bind cluster nodegroup all –node 2

add route 0 0 10.102.53.1 –ownerGroup all
配置第 3 层聚类