Amazon web services AWS网络ELB需要4分钟才能将目标识别为健康

Amazon web services AWS网络ELB需要4分钟才能将目标识别为健康,amazon-web-services,amazon-elb,Amazon Web Services,Amazon Elb,使用AWS网络ELBs:注册实例至少需要四分钟才能变得“健康”。这些实例和服务已经运行了好几天,作为部署的一部分,我只是取消注册,然后在同一个目标组上注册。如果我使用脚本或AWS UI,CLI则没有任何区别 Healthcheck设置为: 端口:尝试了各种,都通过curl测试了监听服务。80,2219001 健康阈值:2 不健康阈值:2 超时:10 间隔时间:30 我可以看到连接请求在指定的任何端口上传入,服务会做出适当的响应,然后关闭连接。据我所知,这应该足以让ELB确定实例是否健康(一旦

使用AWS网络ELBs:注册实例至少需要四分钟才能变得“健康”。这些实例和服务已经运行了好几天,作为部署的一部分,我只是取消注册,然后在同一个目标组上注册。如果我使用脚本或AWS UI,CLI则没有任何区别

Healthcheck设置为:

  • 端口:尝试了各种,都通过curl测试了监听服务。80,2219001
  • 健康阈值:2
  • 不健康阈值:2
  • 超时:10
  • 间隔时间:30
我可以看到连接请求在指定的任何端口上传入,服务会做出适当的响应,然后关闭连接。据我所知,这应该足以让ELB确定实例是否健康(一旦超过阈值)。这意味着我的实例已启动并在注册时间后不超过90秒的时间内运行。我不知道为什么会这样,应该是直截了当的


我无法确定是什么导致了如此长的延迟,因为我已经满足了已知的健康标准。他们坐在
Elb.检查
原因大约4分钟。关于确定延迟原因的进一步测试有什么想法吗?

我们与NLBs讨论了这个问题,并于2018年3月20日在AWS支持下提出了这个问题。他们的答复:

这是一个已知的问题,新注册的实例在较长时间内保持初始状态,我们的内部团队已经在解决此问题。不幸的是,目前我们还没有修复的ETA


他们确认,在正常情况下,目标应保持在初始状态,直到HealthThreshold健康检查通过。

这接近NLB的预期行为

是的,当您向网络负载平衡器注册新目标时,预计需要90到180秒来完成注册过程。注册完成后,网络负载平衡器健康检查系统将开始向目标发送健康检查。新注册的目标必须在配置的时间间隔内通过运行状况检查才能进入服务和接收流量。例如,如果将运行状况检查配置为30秒的间隔,并要求进行3次运行状况检查才能变为正常,则新注册的目标可以进入服务的最短时间是新目标通过其第一次运行状况检查后的90秒

类似地,当您从网络负载平衡器注销目标时,预计需要90-180秒来处理请求的注销,之后它将不再接收新连接。在此期间,弹性负载平衡API将报告目标处于“排空”状态。目标将继续接收新连接,直到注销处理完成。在配置的注销延迟结束时,目标将不包括在目标组的“描述目标运行状况”响应中,并在查询特定目标时返回“未使用”,原因为“target.notregisted”


支持人员还确认,没有任何工作正在进行中,以使其速度超过3分钟。

实例注销多长时间?连接排水是否启用?我每15秒检查一次状态,直到它被注销,然后我执行一些其他任务,大约需要一分钟,然后我重新注册它。排水设置为15秒。我一直等到实例通过describeInstanceHealth api调用“未使用”,然后再继续执行其他任务。这是否已修复?我觉得我也遇到了这种情况。两年后,AWS支持部门的预计时间仍然是:(仍然遇到这个问题仍然是同一个问题在此之前没有解决方法?仍然遇到这个问题:(