ECS代理断开连接时该怎么办?

时间:2016-10-03 14:24:48

标签: amazon-ec2 amazon-ecs

我遇到一个问题,即我的群集中的某个EC2实例有时会断开其ECS代理。这会以静默方式从群集中删除EC2实例(即不再有资格运行任何服务),并从服务器中静默地消耗我的群集。我的群集支持自动扩展组,生成服务器以保持健康的数量。但ECS代理商已断开服务器并未标记为不健康,因此AS组认为一切正常。

我觉得必须有一些(容易的)缓解这一点,或者我在选择ECS并在生产中使用它时遇到了很大的问题。

1 个答案:

答案 0 :(得分:2)

我们这个问题很长一段时间了。随着每个新的AWS ECS优化的AMI变得更好,但截至3个月前,它仍然不时发生。正如mcheshier所提到的,请确保始终使用最新的AMI或至少最新的aws ecs代理

我们能够解决问题的唯一方法是:

  1. 定时自动旋转
    1. 我们会尝试通过随机扩展和缩小来阻止它
  2. 好的云观察警报
    1. 我们碰巧将我们的应用程序设置为一堆基于队列(SQS)的微服务。我们可以根据队列进行扩展和缩小。我们有一个像样的监控设置,让我们可以估算出多个ECS容器的队列速率。当我们检测到速率关闭时,我们将旋转整个ECS实例。 IE浏览器。假设我们的集群部署了4个worker-1的正在运行的容器。我们估计每个工作人员每5分钟发送1000条消息。如果我们的队列速率是每5分钟3000并且我们有4名工作人员,那么1就没有按预期工作。我们在lambda中设置了一些脚本来查找有问题的脚本并终止运行该容器的整个实例。
  3. 我希望这会有所帮助,我意识到这是我们内部应用程序的具体内容,但我能给你和其他任何人的建议是采取主动,尽可能多地提供指标。这将让你做一些整洁的分析,并寻找系统中的扭结,这是其中之一。