Citrix ADC

使用ECMP (Equal Cost Multiple Path)

通过在集群部署中使用等价多路径(Equal Cost Multiple Path, ECMP)机制,集群主节点可以发布虚拟服务器的IP地址。接收发布流量的集群节点将流量引导到必须处理流量的节点。在斑点虚拟服务器和部分条纹虚拟服务器中可能存在冗余转向。因此,从NetScaler 11开始,发现的和部分条纹的虚拟服务器IP地址通告所有者节点,这减少了冗余引导。

要使用ECMP,您必须具备路由协议的详细知识。有关更多信息,请参见配置动态路由.有关集群中路由的详细信息,请参见集群路由

要使用ECMP,您必须首先执行以下操作:

  • 在集群IP地址上启用所需的路由协议(OSPF、RIP、BGP或ISIS)。
  • 将接口和发现的IP地址(启用动态路由)绑定到VLAN中。
  • 配置所选路由协议,并通过VTYSH shell在ZebOS上重新分配内核路由。

集群IP地址配置与外部连接设备配置类似。

请注意

  • 请确保集群上的license支持动态路由,否则ECMP无法正常工作。
  • 对于通配符虚拟服务器不支持ECMP,因为RHI需要一个VIP地址才能向路由器和通配符虚拟服务器发布消息。因为他们没有相关的VIP地址。

图1。ECMP拓扑

ECMP拓扑

当您在集群部署中使用ECMP机制进行流量分配时,主集群节点将虚拟服务器IP地址通告给上游路由器。ECMP路由器可以通过SNIP0、SNIP1或SNIP2到达VIP地址。图1中的交通流描述如下:

  1. 客户端向集群上托管的VIP发送请求。
  2. 上游路由器根据VIP学到的路由,将数据包转发到任意一个节点。假设是NS1。节点NS1是流接收方。
  3. 流接收方(NS1)决定必须处理流量的节点,称为流处理器。例如,节点NS2是流处理器。
  4. 流接收器(NS1)使用SNIP1(97.131.0.2)将请求引导到使用SNIP2(97.131.0.3)的流处理器(NS2)。
  5. 流处理器(NS2)与服务器建立连接。
  6. 服务器处理请求并将响应发送到向服务器发送请求的SNIP地址。

注:

  • 只有ACTIVE节点发布VIP路由。
  • INACTIVE节点不通告VIP路由。
  • 所有ACTIVE节点都发布条纹vip。
  • 只有ACTIVE所有者节点才会发布斑点或部分条纹的vip。

通过命令行界面在集群上配置ECMP

  1. 1 .登录集群IP地址。

  2. 启用路由协议。

    启用ns feature 

    例子:使能OSPF路由协议。

    使能ns特性ospf
  3. 添加VLAN。

    添加vlan 

    例子

    添加vlan 97
  4. 集群节点的接口绑定VLAN。

    绑定vlan  -ifnum  .使用实例

    例子

    绑定vlan 97 -ifnum 0/1/2 1/2 2/ 2
  5. 为每个节点添加一个SNIP地址,并在该节点上启用动态路由。

    add ns ip   -ownerNode  -dynamicRouting ENABLED

    例子

    add ns ip 97.131.0.1 255.0.0.0 -ownerNode 0 -dynamicRouting ENABLED -type SNIP add ns ip 97.131.0.2 255.0.0.0 -ownerNode 1 -dynamicRouting ENABLED -type SNIP add ns ip 97.131.0.3 255.0.0.0 -ownerNode 2 -dynamicRouting ENABLED -type SNIP
  6. 将其中一个发现的SNIP地址绑定到VLAN。当您将一个指定的SNIP地址绑定到VLAN时,该子网中集群中定义的所有其他指定的SNIP地址都自动绑定到该VLAN。

    bind vlan  -IPAddress   .使用实例

    例子

    绑定vlan 97 -ipAddress

    请注意

    可以使用集群节点的NSIP地址,而不需要添加SNIP地址。如果是,则无需执行步骤3-6。

  7. ZebOS上使用VTYSH shell配置路由协议。

    例子:

    在节点id为0、1和2的节点上配置OSPF路由协议。

    vtysh !接口vlan97 !Router ospf owner-node 0 ospf Router -id 97.131.0.1 exit-owner-node owner-node 1 ospf Router -id 97.131.0.2 exit-owner-node owner-node 2 ospf Router -id 97.131.0.3 exit-owner-node redistribute kernel network 97.0.0.0/8 area 0 !

    请注意

    对于要发布的VIP地址,使用vserverrhillevel参数进行RHI设置,如下所示:

    add ns ip   -type VIP -vserverRHILevel  . add ns ip  

    对于OSPF特定的RHI设置,可以进行如下设置:

    add ns ip   -type VIP -ospfLSAType (TYPE1 | TYPE5) -ospfArea  . add ns ip   -type VIP

    使用add ns ip6命令在IPv6地址上执行上述命令。

  8. 在外部交换机上配置ECMP。以下是Cisco®Nexus 7000 C7010 Release 5.2(1)交换机的配置示例。其他交换机也需要进行类似配置。

    //对于OSPF (IPv4地址)全局配置:配置终端特性OSPF接口配置:配置终端接口Vlan10不关机ip地址97.131.0.5/8配置终端路由器OSPF 1 network 97.0.0.0/8区域0.0.0.0 --------------------------------- //对于OSPFv3 (IPv6地址)全局配置:配置终端特性OSPFv3配置终端接口Vlan10不关机IPv6地址use-link-local-only IPv6路由器OSPFv3 1区域0.0.0.0配置终端路由器OSPFv3 1

ECMP部署中的路由器监控集群节点

在集群设置中,在具有标记SNIP地址配置的所有者节点上,现在可以禁用ownerDownResponse选项。缺省情况下,该选项为开启状态,允许节点响应来自上行路由器的ICMP/ARP/ICMP6/ND6请求。您现在可以禁用此选项以允许路由器监视集群节点是否处于活动状态。当路由器发送请求时,如果该选项被禁用,它将标识所有者节点为未激活且不可用于流量分配。

通过命令行接口配置静态路由流量分配的ECMP

add ns ip   -ownernode  -ownerDownResponse disable
使用ECMP (Equal Cost Multiple Path)