将运行状况检查设置为 ELB 而不是 EC2 会忽略 CPU 利用率等 EC2 指标吗?

Will setting health check to ELB instead of EC2 ignore EC2 metrics like CPU Utilization?

如果自动缩放组的健康检查类型设置为 ELB,那么它将自动删除未通过 ELB 健康检查的所有实例(在健康检查 URL 中设置)

只要配置的健康检查正确地报告一个实例是坏的(这听起来像是因为你说 ELB 将实例标记为不健康)这应该有效,但这是否意味着其他自动缩放触发器,如CPU 利用率(在配置->缩放->缩放触发器中设置)被忽略?

  • Autoscaling 组不会对 ELB 进行健康检查,反之亦然。
  • ELB 将检查已注册的 EC2 实例的健康状态。 ELB 将连续 ping EC2 实例与特定端口和特定页面示例端口 80 和 index.html 页面每个时间段说 30 秒或 60 秒。
  • 如果任何一个注册实例运行状况不佳,则 ELB 将不会向这些实例发送流量,也不会终止或停止 EC2 实例。 ELB 不断检查在 ELB 中注册的 EC2 实例的健康状态。
  • 如果一个不健康的实例变得健康,那么 ELB 将向一个实例发送流量。
  • AutoScaling 组将像 ELB 一样对 EC2 实例进行健康检查。但是在 AutoScaling 组中,如果 EC2 实例进入停止状态,那么它将从组中终止并启动具有相同配置的新实例。
  • 如果Autoscaling组与ELB集成,组中新添加的实例将添加到ELB dashboard。

ELB无法进行健康检查。您可以使用 AWS CloudWatch 日志监控 ELB 并上传到目标 S3 存储桶。您可以在 ELB 中启用监控功能并提供您的目标 S3 存储桶来存储日志。