保护 GSLB 设置免受故障

您可以通过配置备份 GSLB 虚拟服务器、配置 Citrix ADC 设备以使用多个 IP 地址进行响应,或为 GSLB 域配置备份 IP 地址,以防止 GSLB 站点或 GSLB 虚拟服务器出现故障。您还可以通过使用溢出将多余流量转移到备份虚拟服务器。

配置备份 GSLB 虚拟服务器

配置 GSLB 虚拟服务器的备份实体可确保在 GSLB 虚拟服务器出现故障时不中断到站点的 DNS 流量。备份实体可以是另一个 GSLB 虚拟服务器,也可以是备份 IP 地址。配置备份实体后,如果主 GSLB 虚拟服务器出现故障,则备份实体将处理 DNS 请求。要指定在主 GSLB 虚拟服务器再次备份时应发生的情况,您可以将备份实体配置为继续处理流量,直到手动启用主虚拟服务器接管(使用 DisablePrimaryonDown 选项),或者您可以配置一个超时期限,在此之后主要接管。

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

如果为备份实体配置了超时和“禁用初始化”选项,则备份会话超时优先于“禁用初始化”设置。

使用命令行界面配置备份 GSLB 虚拟服务器

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

set gslb vserver <name> -backupVServer <name> [-backupSessionTimeout <timeoutValue>] [-disablePrimaryOnDown (ENABLED | DISABLED)]

show gslb vserver <name>

示例:

set gslb vserver vserver-GSLB-1 -backupVServer vserver-GSLB-2 -backupSessionTimeout 3 -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<name> -MIR (ENABLED | DISABLED)
-  show gslb vserver <name>

示例:

set gslb vserver vserver-GSLB-1 -MIR ENABLED
 show gslb vserver <vserverName>

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

  1. 导航到“流量管理”>“GSLB”>“虚拟服务器”,然后双击要为其配置备份虚拟服务器的 GSLB 虚拟服务器(例如,虚拟服务器 GSLB-1)。
  2. 在高级选项卡上,在此虚拟服务器为“UP”下,选中发送所有“活动”服务 IP 响应 (MIR) 复选框,然后单击确定。

将 GSLB 虚拟服务器配置为在关闭时使用空地址记录响应

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

当 GSLB 虚拟服务器被禁用或处于“关闭”状态时,对绑定到该虚拟服务器的 GSLB 域的 DNS 查询的响应将包含绑定到该虚拟服务器的所有服务的 IP 地址。但是,您可以将 GSLB 虚拟服务器配置为在这种情况下发送空的下降响应 (EDR)。设置此选项后,来自 Down 状态的 GSLB 虚拟服务器的 DNS 响应不包含 IP 地址记录,但响应代码成功。这样可以防止客户端尝试连接到关闭的 GSLB 站点。

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

使用命令行界面配置 GSLB 虚拟服务器以清空响应

在命令提示窗口中,键入:

set gslb vserver<name> -EDR (ENABLED | DISABLED)

示例:

> set gslb vserver vserver-GSLB-1 -EDR ENABLED
 Done

使用配置实用程序为清空响应设置 GSLB 虚拟服务器

  1. 导航到“流量管理”>“GSLB”>“虚拟服务器”,然后双击要为其配置备份虚拟服务器的 GSLB 虚拟服务器(例如,虚拟服务器 GSLB-1)。
  2. 在“高级”选项卡上,在“当此虚拟服务器处于“关闭”下,选中不发送任何服务的 IP 地址响应 (EDR) 复选框。
  3. 单击确定

为 GSLB 域配置备份 IP 地址

您可以为 GSLB 配置配置备份站点。使用此配置后,如果所有主站点均为“关闭”,则在 DNS 响应中提供备份站点的 IP 地址。

通常,如果 GSLB 虚拟服务器处于活动状态,则该虚拟服务器会发送带有配置 GSLB 方法所选活动站点 IP 地址之一的 DNS 响应。如果 GSLB 虚拟服务器中所有已配置的主站点都处于非活动状态(处于“关闭”状态),则权威域名系统 (ADNS) 服务器或 DNS 服务器会发送带有备份站点 IP 地址的 DNS 响应。

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

使用命令行界面设置域的备份 IP 地址

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

set gslb vserver <name> -domainName <string> -backupIP <IPAddress>
show gslb vserver <name>

示例:

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 服务,并且服务遇到导致其状态下降的故障时,会发生这种情况。但是,由于溢出功能,监视器将继续保持远程 GSLB 服务的状态。

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

只有当服务的主状态为 UP 时,才考虑 GSLB 服务。只有当所有主虚拟服务器都已关闭时,流量才会被定向到备份 GSLB 服务。通常,此类部署将只有一个备份 GSLB 服务。

向 GSLB 服务添加主要和有效状态具有以下效果:

  • 配置源 IP 持久性时,只有当所选站点上的主虚拟服务器为 UP 且低于阈值时,本地 DNS 才会定向到先前选定的站点。在循环模式下可以忽略持久性。
  • 如果配置了基于 cookie 的持久性,则只有在所选站点上的主虚拟服务器为 UP 时,才会重定向客户端请求。
  • 如果主虚拟服务器已达到饱和度,并且备份 VIP 不存在或关闭,则有效状态将设置为“向下”。
  • 如果外部监视器绑定到 HTTP-HTTPS 虚拟服务器,则监视器决定主状态。
  • 如果主虚拟服务器没有备份虚拟服务器,并且主虚拟服务器已达到阈值,则有效状态设置为“向下”。

使用命令行界面配置备份 GSLB 虚拟服务器

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

set gslb vserver <name> -soMethod <method> -soThreshold <threshold> -soPersistence ( \*\*ENABLED\*\* | \*\*DISABLED\*\* ) -soPersistenceTimeout <timeout>
show gslb vserver <name>

示例:

set gslb vserver Vserver-GSLB-1 -soMethod CONNECTION -soThreshold 1000 -soPersistence ENABLED -soPersistenceTimeout 2
show gslb vserver Vserver-GSLB-1

使用配置实用程序配置备份 GSLB 虚拟服务器

  1. 导航到“流量管理”>“GSLB”>“虚拟服 务器”,然后双击要配置为备份的虚拟服务器(例如,虚拟服务器 LB-1)。
  2. 单击“溢出”部分并设置以下参数:
    • 方法-什么东西
    • 阈值 - soThreshold
    • 持久性超时(最小)-操作时间超时
  3. 选择持久性选项,然后单击 确定