AWS Autoscaling Group EC2 实例在 cron 作业期间关闭
AWS Autoscaling Group EC2 instances go down during cron jobs
我尝试了自动缩放组,或者只是一堆由负载均衡器绑定的 EC2 实例。两种配置乍一看都运行良好。
但是,当 EC2 是自动缩放组的一部分时,它有时会出现故障。其实这种情况经常发生,几乎一天一次。他们以“硬重置”的方式下降。 ec2 监控图显示 CPU 使用率上升到 100%,然后实例变得没有响应,然后被自动缩放组终止。
这与我在这些实例上的进程无关。
当实例不属于 Autoscaling 组时,它可以工作多年而不会出现 CPU 使用高峰。
自动缩放组实例上的“硬重置”正在阻止我的 cron 作业。尽管我喜欢自动缩放组,但我无法使用它。
是否有处理“硬重置”的标准方法?
PS.
在我的例子中,cron 作业是 Ubuntu 上的 运行 PHP 脚本。我设法只完成了一个 运行 工作。
当您的 cron 为 运行 时,您的运行状况检查似乎失败了,因此实例停止服务。
如果您查看 ASG,应该会列出实例被移除的原因。这通常是健康检查失败,但也可能有其他原因。
您可以采取一些措施来解决此问题。
首先,确定为什么您的 cron 占用了 100% CPU,以及通常需要多长时间。
检查您的健康检查设置。您使用的是 HTTP 还是 TCP?间隔是多少,在停止服务之前必须失败多少次检查?
在这两项之间,您应该能够调整运行状况检查,以便它不会在 cron 运行 时间内停止服务。实例可能会失败,通常是因为内存不足。如果是这种情况,您可能需要考虑使用大型实例类型 and/or 启用交换。
我有一次遇到类似的问题,当时是系统自动更新运行。系统(Windows 服务器)下载了一个大更新,并在几个小时内占用了 100% 的 CPU。我的建议是尝试监控那个时刻哪个服务是 运行(即使 SO 是 Linux),同时检查任何计划任务(看起来它是定期的 运行) .除此之外,尝试在活动期间保持打开任务列表,看看发生了什么。
我尝试了自动缩放组,或者只是一堆由负载均衡器绑定的 EC2 实例。两种配置乍一看都运行良好。
但是,当 EC2 是自动缩放组的一部分时,它有时会出现故障。其实这种情况经常发生,几乎一天一次。他们以“硬重置”的方式下降。 ec2 监控图显示 CPU 使用率上升到 100%,然后实例变得没有响应,然后被自动缩放组终止。
这与我在这些实例上的进程无关。
当实例不属于 Autoscaling 组时,它可以工作多年而不会出现 CPU 使用高峰。
自动缩放组实例上的“硬重置”正在阻止我的 cron 作业。尽管我喜欢自动缩放组,但我无法使用它。
是否有处理“硬重置”的标准方法?
PS.
在我的例子中,cron 作业是 Ubuntu 上的 运行 PHP 脚本。我设法只完成了一个 运行 工作。
当您的 cron 为 运行 时,您的运行状况检查似乎失败了,因此实例停止服务。
如果您查看 ASG,应该会列出实例被移除的原因。这通常是健康检查失败,但也可能有其他原因。
您可以采取一些措施来解决此问题。
首先,确定为什么您的 cron 占用了 100% CPU,以及通常需要多长时间。
检查您的健康检查设置。您使用的是 HTTP 还是 TCP?间隔是多少,在停止服务之前必须失败多少次检查?
在这两项之间,您应该能够调整运行状况检查,以便它不会在 cron 运行 时间内停止服务。实例可能会失败,通常是因为内存不足。如果是这种情况,您可能需要考虑使用大型实例类型 and/or 启用交换。
我有一次遇到类似的问题,当时是系统自动更新运行。系统(Windows 服务器)下载了一个大更新,并在几个小时内占用了 100% 的 CPU。我的建议是尝试监控那个时刻哪个服务是 运行(即使 SO 是 Linux),同时检查任何计划任务(看起来它是定期的 运行) .除此之外,尝试在活动期间保持打开任务列表,看看发生了什么。