更新网络负载均衡器的侦听器
您可以更新侦听器协议、侦听器端口或从转发操作接收流量的目标组。默认操作(也称为默认规则)会将请求转发到选定的目标组。
如果您将协议从 TCP、UDP 或 QUIC 更改为 TLS,则必须指定安全策略和服务器证书。如果您将协议从 TLS 更改为 TCP、UDP 或 QUIC,则将删除安全策略和服务器证书。
当 TCP、TLS 或 QUIC 侦听器默认操作的目标组更新时,新连接将路由到新配置的目标组。但是,这不影响在此更改之前创建的任何活动连接。如果正在发送流量,则这些活动连接会与原始目标组中的目标保持关联长达一个小时;如果未发送流量,则保持关联的最长时间为空闲超时期,以先发生者为准。更新侦听器时未应用参数 Connection termination on
deregistration,因为在取消注册目标时应用此参数。
不允许对 QUIC 或 TCP_QUIC 侦听器的端口进行更新。要更新处理 QUIC 流量的侦听器端口,必须先删除该侦听器,再通过新端口重新创建。
- Console
-
更新侦听器
通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/
。 -
在导航窗格中,选择负载均衡器。
-
选择负载均衡器的名称以打开其详细信息页面。
-
在侦听器选项卡上,选择协议:端口列中的文本以打开侦听器的详细信息页面。
-
选择操作,然后选择编辑侦听器。
-
根据需要更新值。
(可选)更改协议。
(可选)更改端口。
(可选)为默认操作选择不同的目标组。
(可选)要添加其他目标组,请选择添加目标组,并根据需要更新权重。
(可选)要移除目标组,请选择移除。
-
(可选)根据需要添加、更新或移除标签。
-
选择保存更改。
- Amazon CLI
-
要更新默认操作
使用以下 modify-listener 命令来更改目标组。
aws elbv2 modify-listener \ --listener-arnlistener-arn\ --default-actions Type=forward,TargetGroupArn=new-target-group-arn以下示例将更新具有多个目标组的侦听器。
aws elbv2 modify-listener \ --listener-arnlistener-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-arnslistener-arn\ --tags "Key=project,Value=lima" "Key=department,Value=digital-media"删除标签
使用 remove-tags 命令。以下示例将移除具有指定键的标签。
aws elbv2 remove-tags \ --resource-arnslistener-arn\ --tag-keysprojectdepartment - CloudFormation
-
要更新默认操作
更新 AWS::ElasticLoadBalancingV2::Listener 资源,以包含新的目标组。
Resources: myTCPListener: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref myLoadBalancer Protocol: TCP Port: 80 DefaultActions: - Type: forward TargetGroupArn: !RefnewTargetGroup或者,要在多个目标组之间分配流量,请按以下方式定义
DefaultActions。DefaultActions: - Type: forward ForwardConfig: TargetGroups: - TargetGroupArn: !RefTargetGroup1Weight:10- TargetGroupArn: !RefTargetGroup2Weight: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'