EC2 - 当机器“准备好”时,你如何告诉 ELB

rh0*_*ium 5 amazon-ec2 autoscaling

我有一个带监控的自动缩放设置,一切都很好。代码部署的过程现在很顺利,基本上做到了这一点。

  1. 创建一个新的 launch_config 定义要拉取的 git commit
  2. 使用新的启动配置更新自动缩放组。
  3. 将服务器的最小规模扩大到我们现有规模的 2 倍左右。
  4. 等他们全部上线
  5. 缩小规模,旧的就会被淘汰。

我看到的问题是,当我们“等待他们上线”时,他们在“准备好”服务之前报告“健康”和“服务中”,因为他们正在更新包并提取相关的源代码. 该时间从每个 EC2 实例 2 分钟到 > 15 分钟不等。

我正在寻找的是一种手动设置“in service/healtny”标志的方法,或者是处理这种滞后的更好策略。

我会注意到当实例触发时 Nginx 会自动启动。这是决定实例是否健康的因素吗?关于这个启动到准备过程的文档很少(我可以找到) - 任何帮助将不胜感激。

如果有帮助,这在 ELB 后面。启用健康检查“/”。我想知道是不是这么简单..

谢谢

Mic*_*ton 3

Elastic Load Balancer 运行状况检查确定 ELB 是否将流量发送到任何特定实例。

你想做的事情很简单:

在完成启动和配置实例之前,请勿启动实例上的 Web 服务器。