更新网络负载均衡器的侦听器 - Elastic Load Balancing
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

更新网络负载均衡器的侦听器

您可以更新侦听器协议、侦听器端口或从转发操作接收流量的目标组。默认操作(也称为默认规则)会将请求转发到选定的目标组。

如果您将协议从 TCP、UDP 或 QUIC 更改为 TLS,则必须指定安全策略和服务器证书。如果您将协议从 TLS 更改为 TCP、UDP 或 QUIC,则将删除安全策略和服务器证书。

当 TCP、TLS 或 QUIC 侦听器默认操作的目标组更新时,新连接将路由到新配置的目标组。但是,这不影响在此更改之前创建的任何活动连接。如果正在发送流量,则这些活动连接会与原始目标组中的目标保持关联长达一个小时;如果未发送流量,则保持关联的最长时间为空闲超时期,以先发生者为准。更新侦听器时未应用参数 Connection termination on deregistration,因为在取消注册目标时应用此参数。

不允许对 QUIC 或 TCP_QUIC 侦听器的端口进行更新。要更新处理 QUIC 流量的侦听器端口,必须先删除该侦听器,再通过新端口重新创建。

Console
更新侦听器
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择负载均衡器

  3. 选择负载均衡器的名称以打开其详细信息页面。

  4. 侦听器选项卡上,选择协议:端口列中的文本以打开侦听器的详细信息页面。

  5. 选择操作,然后选择编辑侦听器

  6. 根据需要更新值。

    • (可选)更改协议

    • (可选)更改端口

    • (可选)为默认操作选择不同的目标组。

    • (可选)要添加其他目标组,请选择添加目标组,并根据需要更新权重。

    • (可选)要移除目标组,请选择移除

  7. (可选)根据需要添加、更新或移除标签。

  8. 选择保存更改

Amazon CLI
要更新默认操作

使用以下 modify-listener 命令来更改目标组。

aws elbv2 modify-listener \ --listener-arn listener-arn \ --default-actions Type=forward,TargetGroupArn=new-target-group-arn

以下示例将更新具有多个目标组的侦听器。

aws elbv2 modify-listener \ --listener-arn listener-arn \ --default-actions '[{ "Type":"forward", "ForwardConfig":{ "TargetGroups":[ {"TargetGroupArn":"target-group-1-arn","Weight":10}, {"TargetGroupArn":"target-group-2-arn","Weight":30} ] } }]'
添加 标签

使用 add-tags 命令。以下示例将添加两个标签。

aws elbv2 add-tags \ --resource-arns listener-arn \ --tags "Key=project,Value=lima" "Key=department,Value=digital-media"
删除标签

使用 remove-tags 命令。以下示例将移除具有指定键的标签。

aws elbv2 remove-tags \ --resource-arns listener-arn \ --tag-keys project department
CloudFormation
要更新默认操作

更新 AWS::ElasticLoadBalancingV2::Listener 资源,以包含新的目标组。

Resources: myTCPListener: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref myLoadBalancer Protocol: TCP Port: 80 DefaultActions: - Type: forward TargetGroupArn: !Ref newTargetGroup

或者,要在多个目标组之间分配流量,请按以下方式定义 DefaultActions

DefaultActions: - Type: forward ForwardConfig: TargetGroups: - TargetGroupArn: !Ref TargetGroup1 Weight: 10 - TargetGroupArn: !Ref TargetGroup2 Weight: 30
添加 标签

更新 AWS::ElasticLoadBalancingV2::Listener 资源,以包含“标签”属性。

Resources: myTCPListener: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref myLoadBalancer Protocol: TCP Port: 80 DefaultActions: - Type: forward TargetGroupArn: !Ref myTargetGroup Tags: - Key: 'project' Value: 'lima' - Key: 'department' Value: 'digital-media'