我的AWS自动标度组中的EC2实例都是在运行1-4小时后终止的。确切的时间各不相同,但当发生这种情况时,整个小组在几分钟内就会下降。
对每种情况的缩放历史描述都是简单的:
在2016-08-26T05:21:04Z,由于EC2健康检查表明它已被终止或停止,一个实例被取消服务。
但我没有加任何健康检查。EC2状态检查实例生命周期的所有pass。
我如何确定这个“健康检查”失败的真正含义?
大多数关于ASG终端的问题都会回到负载平衡器,但是我没有负载均衡器。该集群处理批处理作业,而min/max/期望值则由基于系统其他地方的工作负载积压的软件控制。
ASG历史记录没有指示缩放事件,并且实例也都被显式地保护不受缩放。
我试着将健康检查宽限期设置为20个小时,以确定这是否至少使实例保持正常状态,以便我能够检查它,但它们仍然终止。
实例运行ECS AMI,ECS在容器中运行启动时启动的单个任务。来自该任务的日志看起来很正常,在实例消失前几分钟,事情似乎一直在愉快地运行。
这个任务是CPU密集型的,但是当我让它休眠6个小时时,仍然会发生错误。
发布于 2016-08-29 19:47:53
默认情况下,如果没有ELB,ASG将只使用实例状态检查。但是,您得到的实际消息“在响应EC2健康检查(表明它已被终止或停止)时退出服务”听起来更像是实例关闭上的操作系统,或者某个人(或某个进程)启动了一个停止或终止命令。这些是现场的例子吗?如果spot实例被终止,您将看到这一点。
https://stackoverflow.com/questions/39172639
复制相似问题