Amazon web services ELB始终将实例报告为正在运行

Amazon web services ELB始终将实例报告为正在运行,amazon-web-services,amazon-ec2,amazon-elb,autoscaling,Amazon Web Services,Amazon Ec2,Amazon Elb,Autoscaling,我正在使用aws ELB向自动缩放组报告实例的状态,这样非功能实例将被终止并替换为新实例。ELB被配置为ping TCP:每60秒3000次,等待10秒的超时时间,将其视为健康检查失败。不正常阈值为5个连续检查。 然而,ELB始终将我的实例报告为健康和运行中,即使我定期手动遇到超时的实例,并且我必须手动终止它并启动一个新实例,尽管ELB始终将其报告为运行中 为什么会发生这种情况 经过一点调查,我发现 我试图通过对实例上运行的web应用程序的api调用来评估应用程序的运行状况,并等待超时响应来声明

我正在使用aws ELB向自动缩放组报告实例的状态,这样非功能实例将被终止并替换为新实例。ELB被配置为ping TCP:每60秒3000次,等待10秒的超时时间,将其视为健康检查失败。不正常阈值为5个连续检查。 然而,ELB始终将我的实例报告为健康和运行中,即使我定期手动遇到超时的实例,并且我必须手动终止它并启动一个新实例,尽管ELB始终将其报告为运行中


为什么会发生这种情况

经过一点调查,我发现 我试图通过对实例上运行的web应用程序的api调用来评估应用程序的运行状况,并等待超时响应来声明实例有故障。我需要使用http作为协议,通过负载平衡器(而不是tcp)的自定义路径调用端口3000


<强>注释< /强>:API需要为负载均衡器返回200的状态代码,以考虑它的健康。它现在可以完美工作

将不健康阈值降低到2,然后再试一次。同意,降低阈值。还可以尝试使用其他一些监视,例如每10秒在循环中使用一个简单的curl命令轮询一次,以查看停机事件的情况。了解问题的“形状”