不健康的实例如何进入我的 AWS 负载均衡器?
How do unhealthy instances get onto my AWS load balancer?
我们正在使用 CodeDeploy 在我们的实例启动时将代码加载到它们上。我们的意图是在加载代码之前不会将它们添加到 LB。为此,我们设置了一个运行状况检查,用于查找正在部署的文件之一。我们发现有时会创建没有代码的实例(我假设代码部署失败)并且这些实例即使被标记为不健康也会留在 LB 中?这怎么可能?这与宽限期有关吗?不应该自动删除不健康的实例吗?
我相信我已经发现了很大一部分问题:我的自动缩放组设置为使用 EC2 健康检查而不是我的 ELB 健康检查。这导致实例未终止。由于在流量完全停止之前需要很长时间的不健康状态,流量可能继续流向这个瘫痪实例的时间更长。
我们正在使用 CodeDeploy 在我们的实例启动时将代码加载到它们上。我们的意图是在加载代码之前不会将它们添加到 LB。为此,我们设置了一个运行状况检查,用于查找正在部署的文件之一。我们发现有时会创建没有代码的实例(我假设代码部署失败)并且这些实例即使被标记为不健康也会留在 LB 中?这怎么可能?这与宽限期有关吗?不应该自动删除不健康的实例吗?
我相信我已经发现了很大一部分问题:我的自动缩放组设置为使用 EC2 健康检查而不是我的 ELB 健康检查。这导致实例未终止。由于在流量完全停止之前需要很长时间的不健康状态,流量可能继续流向这个瘫痪实例的时间更长。