编辑 Application Load Balancer 的监听器规则 - Elastic Load Balancing

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

编辑 Application Load Balancer 的监听器规则

您可以随时编辑监听器规则的操作和条件。规则更新不会立即生效,因此在更新规则后的一小段短时间内,可以使用之前的规则配置来路由请求。任何正在进行的请求均会完成。

修改默认操作

默认操作分配给名为 “默认” 的规则。您可以保留当前的规则类型并更改所需的信息,也可以更改规则类型并提供新的必填信息。

Console
修改默认操作
  1. 打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/

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

  3. 选择负载均衡器。

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

  5. 在 “规则” 选项卡的 “监听器规则” 部分,选中默认规则的复选框。选择操作,然后选择编辑规则

  6. 在 “默认操作” 下,根据需要更新身份验证操作和路由操作。

AWS CLI
修改默认操作

使用 modify-listener 命令。以下示例更新了forward操作的目标组。

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":50}, {"TargetGroupArn":"target-group-2-arn","Weight":50} ] } }]'
CloudFormation
修改默认操作

更新AWS::ElasticLoadBalancingV2::Listener资源。

Resources: myHTTPlistener: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref myLoadBalancer Protocol: HTTP Port: 80 DefaultActions: - Type: "forward" TargetGroupArn: !Ref myNewTargetGroup

更新规则优先级

规则是按优先级顺序 (从最低值到最高值) 计算的。最后评估默认规则。您可以随时更改非默认规则的优先级。您无法更改默认规则的优先级。

Console
更新规则优先级
  1. 打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/

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

  3. 选择负载均衡器。

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

  5. 在 “规则” 选项卡上,选择侦听器规则,然后选择操作重新确定规则优先级

  6. 在 “监听器规则” 部分,“优先级” 列显示当前规则的优先级。要更新规则优先级,请输入介于 1-50,000 之间的值。

  7. 选择保存更改

AWS CLI
更新规则优先级

使用 set-rule-priorities 命令。

aws elbv2 set-rule-priorities \ --rule-priorities "RuleArn=listener-rule-arn,Priority=5"
CloudFormation
更新规则优先级

更新AWS::ElasticLoadBalancingV2::ListenerRule资源。

Resources: myListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 5 Conditions: - Field: host-header Values: - example.com - www.example.com Actions: - Type: forward TargetGroupArn: !Ref myTargetGroup

更新操作和条件

您可以更新规则的操作和条件。

Console
更新规则操作和条件
  1. 打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/

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

  3. 选择负载均衡器。

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

  5. 在 “规则” 选项卡上,选择侦听器规则,然后选择操作编辑规则

  6. 根据需要更新规则操作和条件。有关详细步骤,请参阅添加规则

  7. 选择下一步

  8. (可选)更新优先级。

  9. 选择下一步

  10. 选择保存更改

AWS CLI
更新规则操作和条件

使用带有选项、选项或两个--actions选项的 m odify-rule 命令。--conditions

有关这些选项的示例,请参见添加规则

CloudFormation
更新规则操作和条件

更新AWS::ElasticLoadBalancingV2::ListenerRule资源。

有关规则示例,请参阅 添加规则

管理规则标签

标签可帮助您以不同的方式对侦听器和规则进行分类。例如,您可以按用途、所有者或环境为资源添加标签。每条规则的标签密钥必须是唯一的。如果您添加的标签中的键已经与规则关联,它将更新该标签的值。

用完标签后可以将其删除。

Console
管理规则的标签
  1. 打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/

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

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

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

  5. 在 “规则” 选项卡上,选择 “名称标签” 列中的文本,打开规则的详情页面。

  6. 在规则详细信息页面上,选择管理标签

  7. 管理标签页面上,执行以下一项或多项操作:

    1. 要添加标签,请选择添加新标签,然后为输入值。

    2. 要删除标签,请选择标签旁边的删除

    3. 要更新标签,请为 “密钥” 或 “值” 输入新

  8. 选择保存更改

AWS CLI
向规则添加标签

使用添加标签命令。

aws elbv2 add-tags \ --resource-arns listener-rule-arn \ --tags "Key=project,Value=lima" "Key=department,Value=digital-media"
从规则中移除标签

使用移除标签命令

aws elbv2 remove-tags \ --resource-arns listener-rule-arn \ --tag-keys project department
CloudFormation
向规则添加标签

更新AWS::ElasticLoadBalancingV2::ListenerRule资源。

Resources: myListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 10 Conditions: - Field: host-header Values: - example.com - www.example.com Actions: - Type: forward TargetGroupArn: !Ref myTargetGroup Tags: - Key: 'project' Value: 'lima' - Key: 'department' Value: 'digital-media'