Citrix ADC

配置基于域的自动服务组扩展

基于域的服务组由通过解析绑定到服务组的服务器的域名获取IP地址的成员组成。域名由您在设备上配置其详细信息的名称服务器解析。基于域的服务组还可以包括基于IP地址的成员。

基于域的服务器的名称解析过程可能会返回多个IP地址。DNS响应中的IP地址数由名称服务器上为域名配置的地址(a)记录数决定。即使名称解析过程返回多个IP地址,也只有一个IP地址绑定到服务组。要向上扩展或缩小服务组,您需要分别手动将其他基于域的服务器与服务组绑定和解除绑定。

但是,您可以将基于域的服务组配置为根据DNS名称服务器为基于域的服务器返回的完整IP地址集自动扩展。要配置自动缩放,请在将基于域的服务器绑定到服务组时启用自动缩放选项。以下是配置自动缩放的基于域的服务组的步骤:

  • 添加用于解析域名的名称服务器。有关在设备上配置名称服务器的更多信息,请参阅添加名称服务器
  • 添加基于域的服务器。有关添加基于域的服务器的信息,请参阅配置服务器对象
  • 添加服务组并将基于域的服务器关联到服务组,并将AutoScale选项设置为DNS。有关添加服务组的信息,请参阅配置服务组

当基于域的服务器绑定到服务组并且在绑定上设置了自动缩放选项时,UDP监视器和TCP监视器将自动创建并绑定到基于域的服务器。两个显示器作为解析器。默认情况下,TCP监视器处于禁用状态,设备使用UDP监视器将DNS查询发送到名称服务器以解析域名。如果DNS响应被截断(将TC标志设置为1),则设备回退到TCP并使用TCP监视器通过TCP发送DNS查询。此后,设备继续仅使用TCP监视器。

来自域名服务器的DNS响应可能包含域名的多个IP地址。设置了自动缩放选项后,设备会使用默认监视器轮询每个IP地址,然后在服务组中仅包括那些已启动且可用的IP地址。IP地址记录过期后(如果设备已回到使用TCP监视器),UDP监视器(或TCP监视器,如果设备回到使用TCP监视器)会查询名称服务器以获取域解析,并在服务组中包含任何新IP地址。如果作为服务组一部分的IP地址不存在于DNS响应中,则设备会在正常关闭到组成员的现有连接后从服务组中删除该地址,在此过程中,设备不允许与该成员建立任何新连接。如果在过去成功解析的域名导致nxdomain响应,则将删除与该域关联的所有服务组成员。

静态(基于IP地址的)成员和动态扩展基于域的成员可以在服务组中共存。您还可以使用自动缩放选项集将具有不同域名的成员绑定到服务组。但是,与服务组关联的每个域名在服务组中必须是唯一的。必须为要用于自动服务组扩展的每个基于域的服务器启用自动缩放选项。如果一个或多个域通用IP地址,则该IP地址仅添加到服务组中一次。

重要

  • 集群部署中支持DNS AutoScale。
  • 群集部署中不支持AutoScale服务组的路径监控。

使用命令行界面将服务组配置为自动缩放

在命令提示符下,键入以下命令以配置服务组并验证配置:

add serviceGroup  -autoScale (YES | NO) show serviceGroup  

示例

在以下示例中,server1是基于域的服务器。DNS响应包含多个IP地址。五个地址可用,并将其添加到服务组中。

> add serviceGroup servGroup server1 80 - autoscale YES Done > sh serviceGroup servGroup servGroup - HTTP State: ENABLED Monitor Threshold: 0 . . . . . . .使用实例1) 192.0.2.31:80状态:UP服务器名称:server1(自动扩展)服务器ID: None Weight: 1监控名称:TCP -default状态:UP Probes: 2 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received。2) 192.0.2.32:80 State: UP Server Name: server1(自动扩展)Server ID: None Weight: 1 Monitor Name: TCP -default State: UP Probes: 2 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received。3) 192.0.2.36:80 State: UP Server Name: server1(自动伸缩)Server ID: None Weight: 1 Monitor Name: TCP -default State: UP Probes: 2 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received。4) 192.0.2.55:80状态:UP Server Name: server1(自动伸缩)Server ID: None Weight: 1 Monitor Name: TCP -default State: UP Probes: 2 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received。5) 192.0.2.80:80状态:UP Server Name: server1(自动伸缩)Server ID: None Weight: 1 Monitor Name: TCP -default State: UP Probes: 2 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received。做< !——NeedCopy >

使用配置实用程序将服务组配置为自动缩放

  1. 导航到流量管理>负载平衡>服务组
  2. 创建服务组,然后将自动缩放模式设置为dns。

覆盖TTL值

注意:Citrix ADC 12.1版本51。Xx及更高版本支持此选项。

Citrix ADC设备配置为在应用程序启动期间定期向DNS服务器查询与应用程序关联的SRV记录中的任何更新。默认情况下,此查询的周期取决于SRV记录中发布的ttl .输出说明在微服务或云世界应用程序中,部署更动态。因此,代理必须更快地吸收对应用程序部署的任何更改。因此,建议用户将基于域的服务TTL参数显式设置为低于SRV记录TTL且最适合您的部署的值。您可以通过两种方法覆盖TTL值:

  • 将成员绑定到服务组时
  • 使用配置lb参数命令全局设置TTL值。

如果TTL值是在绑定服务组成员和全局绑定时配置的,那么在绑定服务组成员时指定的TTL值将优先使用。如果绑定服务组成员时或在全局级别均未指定TTL值,则星展银行监控时间间隔将从DNS响应中的TTL值派生出来。

使用cli覆盖TTL值

  • 要在绑定时覆盖TTL值,请在命令提示符处键入:

    bind serviceGroup  ( [-dbsTTL ]) 

    示例:

    绑定服务组svc_grp_1 web_serv -dbsTTL 10 
  • 要全局覆盖TTL值,请在命令提示符处键入:

    设置lb参数[-dbsTTL ] 

    示例:

    设置lb参数-dbsTTL 15 

使用GUI覆盖TTL值

要在绑定时覆盖TTL值,请执行以下操作:

  1. 导航到流量管理>负载平衡>服务组

  2. 在“服务组“页面中,选择已创建的服务组,然后单击”编辑”。

  3. 负载平衡服务组页面中,单击服务组成员

  4. 在“服务组成员绑定“页面中,选择已创建的服务器,然后单击”编辑”。

  5. 基于域的服务TTL中,输入TTL值。

要在全局级别覆盖TTL值,请执行以下操作:

  1. 导航到流量管理>负载平衡>更改负载平衡参数

  2. 基于域的服务TTL中,输入TTL值。

注意:如果基于域的服务器TTL值设置为0,则使用数据包中的TTL值。

为服务组和域名绑定指定不同的名称服务器

注意:Citrix ADC 12.1版本51。Xx及更高版本支持此选项。

您可以为特定组中的不同域名配置不同的名称服务器。在将 DBS 服务器绑定到服务组时,设置 Nameerver 参数是可选的。如果在将成员绑定到服务组时未指定名称服务器,则考虑全局配置的名称服务器。

使用cli将服务器绑定到服务组时指定名称服务器

在命令提示符下,键入:

bind serviceGroup  ( [-nameServer ] [-dbsTTL ]) 

例如

绑定服务组svc_grp_1 web_serv -ns.nameserver.com 10.102.27.155 -dbsTTL 10 

使用GUI将服务器绑定到服务组时指定名称服务器

  1. 导航到流量管理>负载平衡>服务组

  2. 在“服务组“页面中,选择已创建的服务组,然后单击”编辑”。

  3. 负载平衡服务组页面中,单击服务组成员

  4. 在“服务组成员绑定“页面中,选择已创建的服务器,然后单击”编辑”。

  5. 名称服务器中,指定绑定域的查询必须发送到的名称服务器名称。

配置基于域的自动服务组扩展