View a markdown version of this page

编辑网关负载均衡器的目标组属性 - Elastic Load Balancing

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

编辑网关负载均衡器的目标组属性

为网关负载均衡器创建目标组后,可以编辑其目标组属性。

目标失效转移

借助目标失效转移功能,您可以指定当目标运行不正常或注销时,网关负载均衡器将如何处理现有的流量。默认情况下,即使目标未通过运行状况检查或已注销,网关负载均衡器仍会继续将现有流量发送到同一个目标。您可以通过重新哈希处理这些流量(rebalance)或将其保留为默认状态(no_rebalance)来管理这些流量。

无再平衡:

网关负载均衡器继续将现有流量发送到未通过运行状况检查或耗尽的目标。如果网关负载均衡器无法到达目标,则流量将被丢弃。

但新流量会发送到运行正常的目标。这是默认行为。

再平衡:

网关负载均衡器会重新哈希现有流量,并在注销延迟超时到期后将其发送到运行正常的目标。

对于已注销的目标,失效转移的最短时间将取决于注销延迟。在注销延迟到期之前,目标不会被标记为已注销。

对于运行不正常的目标,失效转移的最短时间将取决于目标组的运行状况检查配置(间隔时间阈值)。这是目标在被标记为运行不正常前将经过的最短时间。超过此时间后,由于需要额外的传播时间和 TCP 重传回退,网关负载均衡器可能需要在几分钟后才能将新流量重新路由到运行正常的目标。

使用控制台更新目标失效转移属性
  1. 打开位于 https://console.aws.amazon.com/ec2/ 的 Amazon EC2 控制台。

  2. 在导航窗格上的负载均衡下,选择目标组。

  3. 选择目标组的名称以打开其详细信息页面。

  4. 在组详细信息页面的属性部分中,选择编辑。

  5. 在编辑属性页面上,根据需要更改失效转移的值。

  6. 选择保存更改。

要更新目标故障转移属性,请使用 AWS CLI

使用 modify-target-group-attributes 命令和以下键值对:

  • 键 = target_failover.on_deregistration,值 = no_rebalance(默认)或 rebalance

  • 键 = target_failover.on_unhealthy,值 = no_rebalance(默认)或 rebalance

注意

这两个属性(target_failover.on_deregistration 和 target_failover.on_unhealthy)的值必须具有相同。

目标失败和取消注册时重置 TCP

启用后,当目标运行状况不佳或在连接耗尽时间过后取消注册时,网关负载均衡器会向流量发送方发送 TCP 重置 (RST)。借助此功能,流量发送者可以通过与健康目标建立新连接来快速恢复。

send_tcp_reset.on_unhealthy.enabled

表示当目标运行状况不佳时,网关负载均衡器是否发送 TCP 重置。可能的值为 true 和 false。默认为 false。

send_tcp_reset.on_deregistration.enabled

表示在目标取消注册且连接耗尽时间已过后,网关负载均衡器是否发送 TCP 重置请求。可能的值为 true 和 false。默认为 false。

要在目标出现故障时启用 TCP 重置和取消注册,请使用 AWS CLI

使用 “修改目标组属性” 命令,将两个属性都设置为。true

aws elbv2 modify-target-group-attributes --target-group-arn target-group-arn --attributes Key=send_tcp_reset.on_unhealthy.enabled,Value=true Key=send_tcp_reset.on_deregistration.enabled,Value=true
在目标出现故障时启用 TCP 重置并使用控制台取消注册
  1. 打开位于 https://console.aws.amazon.com/ec2/ 的 Amazon EC2 控制台。

  2. 在导航窗格上的负载均衡下,选择目标组。

  3. 选择您的目标群组,选择 “属性” 选项卡,然后选择 “编辑” 。

  4. 选择 “不进行再平衡并发送 TCP 重置(推荐)” 图块。

  5. 选择 “运行状况不佳时发送 TCP 重置” 和 “取消注册时发送 TCP 重置”。

  6. 选择保存更改。

此功能有以下要求:

  • 此功能需要 5 元组流粘性,设置为时stickiness.enabled目标组默认使用该粘性。false

  • 当设置stickiness.enabled为send_tcp_reset.on_deregistration.enabled时,您无法启用send_tcp_reset.on_unhealthy.enabled或启用true。

  • 当目标故障转移属性(target_failover.on_unhealthy或target_failover.on_deregistration)设置为时,您无法启用此功能rebalance。

  • 此功能仅适用于 TCP 流量。UDP 和其他协议不受影响。

  • 此功能适用于新的和现有的网关负载均衡器。

取消注册延迟

当注销某个目标时,网关负载均衡器会按如下方式管理流向该目标的流量:

新流量

网关负载均衡器将停止发送新流量。

现有流量

网关负载均衡器按照协议来处理现有流量:

  • TCP:如果现有流量的空闲时间超过 350 秒,则会将其关闭。

  • 其他协议:如果现有流量的空闲时间超过 120 秒,则会将其关闭。

为帮助耗尽现有流量,您可以为目标组启用流量再平衡。有关更多信息,请参阅 目标失效转移。

在超时到期之前,已注销的目标将显示处于 draining 状态。注销延迟超时到期后,目标的状态将变为 unused。

使用控制台更新取消注册延迟属性
  1. 打开位于 https://console.aws.amazon.com/ec2/ 的 Amazon EC2 控制台。

  2. 在导航窗格上的负载均衡下,选择目标组。

  3. 选择目标组的名称以打开其详细信息页面。

  4. 在组详细信息页面的属性部分中,选择编辑。

  5. 在编辑属性页面上,根据需要更改注销延迟的值。

  6. 选择保存更改。

要更新取消注册延迟属性,请使用 AWS CLI

使用 modify-target-group-attributes 命令。

流量粘性

默认情况下,网关负载均衡器使用 5 元组(用于流量)保持流向特定目标设备的 TCP/UDP 流的粘性。5 元组包括源 IP、源端口、目标 IP、目标端口和传输协议。您可以使用粘性类型属性来修改默认值(5 元组),然后选择 3 元组(源 IP、目标 IP 和传输协议)或 2 元组(源 IP 和目标 IP)。

流量粘性注意事项
  • 流量粘性是在目标组级别配置和应用的,并且适用于所有流向目标组的流量。

  • AWS Transit Gateway 设备模式开启时,不支持 2 元组和 3 元组流量粘性。要在您的上使用设备模式 AWS Transit Gateway,请在网关负载均衡器上使用 5 元组流粘性

  • 流量粘性可能会导致连接和流量分布不均,并相应影响目标的可用性。建议您在修改目标组的流量粘性类型之前,先终止或耗尽所有现有的流量。

使用控制台更新流量粘性属性
  1. 打开位于 https://console.aws.amazon.com/ec2/ 的 Amazon EC2 控制台。

  2. 在导航窗格上的负载均衡下,选择目标组。

  3. 选择目标组的名称以打开其详细信息页面。

  4. 在组详细信息页面的属性部分中,选择编辑。

  5. 在编辑属性页面上,根据需要更改流量粘性的值。

  6. 选择保存更改。

要更新流量粘性属性,请使用 AWS CLI

使用 modify-target-group-attributes 命令以及 stickiness.enabled 和 stickiness.type 目标组属性。