Citrix ADC

防止GSLB设置失败

通过配置以下内容,可以保护GSLB设置免受GSLB站点或GSLB虚拟服务器故障的影响:

  • 备份GSLB虚拟服务器
  • 使用多个IP地址响应的Citrix ADC设备
  • GSLB域的备份IP地址

您还可以通过使用溢出将多余的流量转移到备份虚拟服务器。

配置备份GSLB虚拟服务器

配置GSLB虚拟服务器的备份实体,可以保证在GSLB虚拟服务器故障时,站点的DNS流量不会中断。备份实体可以是另一台GSLB虚拟服务器,也可以是备份IP地址。配置备份实体后,当主GSLB虚拟服务器出现故障时,由备份实体处理DNS请求。要指定当主GSLB虚拟服务器再次恢复时必须发生什么,您可以配置备份实体以继续处理流量,直到手动启用主虚拟服务器接管(使用disablePrimaryOnDown选项)。

注意:您可以将单个备份实体配置为多个GSLB虚拟服务器的备份。

使用命令行方式配置备份GSLB虚拟服务器

在命令提示符下输入以下命令,将GSLB虚拟服务器配置为备份虚拟服务器并验证配置结果:

set gslb vserver  -backupVServer  [-disablePrimaryOnDown (ENABLED | DISABLED)] show gslb vserver  

例子:

set gslb vserver vserver- gslb -1 -backupVServer vserver- gslb -2 -disablePrimaryOnDown ENABLED show gslb vserver vserver- gslb -1 

使用配置实用工具将GSLB虚拟服务器设置为备份虚拟服务器

  1. 导航到交通管理>GSLB>虚拟服务器,双击GSLB虚拟服务器。
  2. 选择备份虚拟服务器节并选择备份虚拟服务器。

配置GSLB设置以使用多个IP地址进行响应

典型的DNS响应包含性能最好的GSLB服务的IP地址。但是,如果启用多个IP响应(MIR), Citrix ADC设备将发送最佳GSLB服务作为响应中的第一条记录,并将其余活动服务作为额外记录添加。如果MIR被禁用(默认值),Citrix ADC设备将发送最佳服务作为响应中的唯一记录。

通过命令行接口为多个IP响应配置GSLB虚拟服务器

在命令提示符下,输入以下命令为多个IP响应配置GSLB虚拟服务器并验证配置:

set gslb vserver - mir (ENABLED | DISABLED) - show gslb vserver 

例子:

set gslb vserver vserver- gslb -1 -MIR ENABLED show gslb vserver  

使用配置实用工具为多个IP响应设置GSLB虚拟服务器

  1. 导航到交通管理>GSLB>虚拟服务器双击需要配置备份虚拟服务器的GSLB虚拟服务器(例如vserver-GSLB-1)。
  2. 先进的选项卡,在“当此虚拟服务器UP”下,选中“发送所有“活动”服务IP以响应(MIR)”复选框,然后选中好吧

配置GSLB虚拟服务器在DOWN时响应空地址记录

DNS响应可以包含请求域的IP地址,也可以包含DNS服务器不知道该域的IP地址的回答,在这种情况下,查询被转发到另一个名称服务器。这些是对DNS查询唯一可能的响应。

当GSLB虚拟服务器处于关闭状态或DOWN状态时,绑定该虚拟服务器的GSLB域的DNS查询响应中包含该虚拟服务器绑定的所有业务的IP地址。但是,在这种情况下,可以配置GSLB虚拟服务器发送空的down响应(EDR)。设置该选项时,当GSLB虚拟服务器处于DOWN状态时,其DNS响应不包含IP地址记录,但响应码为成功。这可以防止客户端尝试连接到已关闭的GSLB站点。

注意:您必须为希望应用此设置的每个虚拟服务器配置此设置。

使用命令行接口为空down响应配置GSLB虚拟服务器

在命令提示符下,输入:

set gslb vserver -EDR (ENABLED | DISABLED) 

例子:

> set gslb vserver vserver- gslb -1 -EDR ENABLED完成

使用配置实用工具为空down响应设置GSLB虚拟服务器

  1. 导航到交通管理>GSLB>虚拟服务器双击需要配置备份虚拟服务器的GSLB虚拟服务器(例如vserver-GSLB-1)。
  2. 在“高级”选项卡上,在“当此虚拟服务器关闭”下,选中“不发送任何服务的IP地址响应(EDR)”复选框。
  3. 点击好吧

配置GSLB域的备份IP地址

您可以为GSLB配置配置备份站点。有了这样的配置,如果所有的主站点都DOWN了,DNS响应中就会提供备份站点的IP地址。

通常情况下,如果GSLB虚拟服务器处于活动状态,则该虚拟服务器将使用配置的GSLB方法选择的活动站点IP地址之一发送DNS响应。如果GSLB虚拟服务器中配置的所有主站点都处于非活动状态(DOWN),则ADNS服务器或DNS服务器将使用备份站点的IP地址发送DNS响应。

注意:发送备份IP地址时,不支持持久化。

使用命令行方式配置域的备份IP地址

在命令提示符下,输入以下命令设置备份IP地址并验证配置结果:

set gslb vserver  -domainName  -backupIP  show gslb vserver  

例子:

set gslb vserver vserver- gslb -1 -domainName www.abc.com -backupIP 10.102.29.66 show gslb vserver vserver- gslb -1 

使用配置实用程序为域设置备份IP地址

  1. 导航到交通管理>GSLB>虚拟服务器双击需要绑定备份域的GSLB虚拟服务器(例如vserver-GSLB-1)。
  2. 单击配置GSLB域,并指定备份域的IP地址备份的IP字段。

将多余的流量分流到备份虚拟服务器

当连接到主GSLB虚拟服务器的连接数超过配置的阈值时,可以使用溢出选项将新连接转移到备用GSLB虚拟服务器。该阈值可以动态计算或手动设置。一旦到主虚拟服务器的连接数降到阈值以下,主GSLB虚拟服务器将恢复为客户端请求提供服务。

您可以配置带有溢出的持久性。在配置持久性时,如果新客户端尚未连接到主虚拟服务器,则将该客户端转移到备份虚拟服务器。当配置持久性时,在主虚拟服务器的连接数下降到阈值以下后,转移到备份虚拟服务器的连接不会移回主虚拟服务器。相反,备份虚拟服务器继续处理这些连接,直到用户终止它们。同时,主虚拟服务器接受新的客户机。

该阈值可以通过连接数、带宽和服务运行状况来衡量。

如果备份虚拟服务器达到配置的阈值并且无法承受任何额外负载,则主虚拟服务器将所有请求转移到指定的重定向URL。如果没有在主虚拟服务器上配置重定向URL,则后续请求将被丢弃。

溢出特性可防止在主GSLB虚拟服务器发生故障时,远程备份GSLB服务(备份GSLB站点)被客户端请求淹没。当监视器绑定到远程GSLB服务,并且该服务经历导致其状态变为DOWN的故障时,就会发生这种情况。但是,由于溢出特性,监视器继续保持远程GSLB服务的状态为UP。

作为解决此问题的一部分,为GSLB服务维护两种状态:主状态和有效状态。主状态是主虚拟服务器的状态,有效状态是虚拟服务器(主链和备份链)的累积状态。如果虚拟服务器链中的任何一个虚拟服务器处于UP状态,则将有效状态设置为UP。还提供了一个标志,表明主VIP已达到阈值。该阈值可以通过连接数或带宽来衡量。

只有当服务的主状态为UP时,才会考虑使用GSLB。只有当所有主虚拟服务器都DOWN时,流量才会被定向到备用GSLB服务。通常,这样的部署只有一个备份GSLB服务。

将主状态和有效状态添加到GSLB服务中会产生以下影响:

  • 当配置源IP持久时,只有在所选站点的主虚拟服务器UP且低于阈值时,本地DNS才会定向到之前选择的站点。在轮询模式中可以忽略持久化。
  • 如果配置了基于cookie的持久性,则只有在所选站点上的主虚拟服务器UP时才会重定向客户端请求。
  • 当主虚拟服务器达到饱和状态,且备份vip不在或down时,有效状态设置为down。
  • 如果外部监视器绑定到HTTP-HTTPS虚拟服务器,则监视器决定主状态。
  • 如果主用虚拟服务器没有备份虚拟服务器,且主用虚拟服务器达到阈值,则生效状态设置为DOWN。

使用命令行方式配置备份GSLB虚拟服务器

在命令提示符下,输入以下命令配置备份GSLB虚拟服务器并验证配置:

set gslb vserver  - somemethod  -soThreshold  - spersistence (**ENABLED** | **DISABLED**) -soPersistenceTimeout  show gslb vserver  

例子:

set gslb vserver vserver - gslb -1 - somemethod CONNECTION -soThreshold 1000 - spersistence ENABLED -soPersistenceTimeout 2 show gslb vserver vserver - gslb -1 

使用配置实用工具配置备份GSLB虚拟服务器

  1. 导航到交通管理>GSLB>虚拟服务器并双击要配置为备份的虚拟服务器(例如,Vserver-LB-1)。
  2. 单击溢出节并设置以下参数:
    • 方法——soMethod
    • 阈值- soThreshold
    • 持久性超时(min) - spersistencetimeout
  3. 选择Persistence选项并单击好吧