Adding Elastic Load Balancing Health Checks to an Auto Scaling Group - Amazon EC2 Auto Scaling
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

Adding Elastic Load Balancing Health Checks to an Auto Scaling Group

Auto Scaling 组的默认运行状况检查只有 EC2 状态检查。如果一个实例未通过这些状态检查,Auto Scaling 组会认为该实例运行状况不佳并进行替换。

您可以将一个或多个目标组(Application Load Balancer 和 Network Load Balancer)和/或一个或多个负载均衡器 (Classic Load Balancer) 附加到 Auto Scaling 组。但是,默认情况下,组不会考虑实例不健康,如果它失败了由 Elastic Load Balancing.

要确保组基于负载平衡器提供的额外测试来确定实例的运行状况,可以配置 Auto Scaling 要使用的组 Elastic Load Balancing (ELB)运行状况检查。负载均衡器会定期发送 ping、尝试进行连接或者发送请求来测试 EC2 实例。这些测试称为运行状况检查。

如果将 Auto Scaling 组配置为使用 ELB 运行状况检查,而某实例未能通过 EC2 状态检查或 ELB 运行状况检查,则它会认为该实例运行状况不佳。如果您将多个负载均衡器目标组或 Classic Load Balancer 附加到该组,则只有在所有负载均衡器目标组或 Classic Load Balancer 均报告某实例运行状况良好的情况下,它才会认为该实例运行状况良好。如果其中任何一个负载均衡器目标组或 Classic Load Balancer 将实例报告为运行状况不佳,则 Auto Scaling 组将替换该实例,即使其他负载均衡器目标组或 Classic Load Balancer 将实例报告为运行状况良好也是如此。

请参阅以下主题:

以下过程演示如何向 Auto Scaling 组添加 ELB 运行状况检查。

Adding Health Checks (Console)

使用以下过程将宽限期为 300 秒的 ELB 运行状况检查添加到已附加负载均衡器的 Auto Scaling 组。

添加运行状况检查

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格上的 AUTO SCALING 下,选择 Auto Scaling Groups (Auto Scaling 组)

  3. 选中现有组旁边的复选框。

    将在 Auto Scaling groups (Auto Scaling 组) 页面底部打开一个拆分窗格,其中显示有关所选组的信息。

  4. Details (详细信息) 选项卡上,选择 Health checks (运行状况检查)Edit (编辑)。(旧控制台:在 Details (详细信息) 选项卡上,选择 Edit (编辑)。)

  5. 对于 Health check type (运行状况检查类型),选择 Enable ELB health checks (启用 ELB 运行状况检查)。(旧控制台:选择 ELB。)

  6. 对于 Health check grace period (运行状况检查宽限期),输入 300

  7. 选择 Update (更新)

  8. Instance management (实例管理) 选项卡上的 Instances (实例) 下,您可以查看实例的运行状况。(旧控制台: 实例 选项卡可以查看实例的运行状况状态。)TheThethe 健康状况 列显示新添加的运行状况检查结果。

Adding Health Checks (AWS CLI)

可以使用以下 update-auto-scaling-group 命令创建宽限期为 300 秒的运行状况检查。

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-lb-asg \ --health-check-type ELB --health-check-grace-period 300