如何解决 Elastic Beanstalk 环境出现的黄色或红色运行状况警告?

1 分钟阅读
0

当我的 AWS Elastic Beanstalk 环境处于黄色(警告)或红色(已降级)状态时,我想修复其运行状况。

简短描述

以下一些常见问题可能导致 Elastic Beanstalk 环境出现黄色或红色运行状况警告:

  • 运行状况代理报告 Amazon Elastic Compute Cloud(Amazon EC2)实例上的数据量不足。
  • 在命令超时内,正在对实例执行操作。
  • Elastic Beanstalk 环境正在更新。
  • 负载均衡器运行状况检查失败。
  • 运行状况代理报告了大量请求失败。
  • 环境资源(例如实例)不可用。
  • 对实例进行的操作需要很长时间。
  • 实例处于严重状态。
  • Elastic Beanstalk 运行状况进程守护程序失败。
  • Elastic Beanstalk 环境未通过一次或多次运行状况检查。
  • Elastic Beanstalk 收到的 4xx 或 5xx HTTP 返回码数量增加。
  • 存在命令超时导致部署失败的情况。

有关警告的更多信息,请参阅 Health colors and statuses

解决方法

确定出现运行状况警告的原因

  1. 打开 Elastic Beanstalk 控制台
  2. 选择应用程序。
  3. 从导航窗格,选择事件
  4. 类型列中,查找严重性类型为警告的近期事件,然后记下这些事件以便稍后进行故障排除。
  5. 在导航窗格中,选择控制面板
  6. 运行状况部分中,选择原因

现在,您可以在增强型运行状况概述页面上查看环境的整体运行状况。

有关更多信息,请参阅 Enhanced health monitoring with the environment management console

对已确定的运行状况警告原因进行故障排除

根据您在增强型运行状况概述页面中确定的运行状况问题,选择以下故障排除方法之一:

  • 如果是负载均衡器运行状况检查失败,请参阅如何对 Elastic Beanstalk 的 ELB 运行状况检查进行问题排查?
  • 如果是其他运行状况检查失败,请参阅 Basic health reporting;如果您使用增强型运行状况报告,请参阅 Enhanced health reporting and monitoring
  • 如果是耗时过长的操作,请使用 Elastic Beanstalk 事件流识别正在进行的操作。或者,通过登录您的 Amazon EC2 实例来监控 /var/log/eb-engine.log
    **注意:**比通常操作花费时间更长的操作通常是环境部署或配置更新。
  • 如果是 4xx 和 5xx HTTP 返回码数量增加,请通过监控代理服务器的访问日志来确定原因。然后,将访问日志与应用程序日志进行比较,以确定错误增加的模式。有关更多信息,请参阅常见错误
    注意:代理服务器日志可以是 Apache(/var/log/httpd/access_log)、NGINX(/var/log/nginx/access_log)或互联网信息服务(C:\inetpub\logs\LogFiles)的访问日志,具体取决于您的平台。
  • 如果是实例处于严重状态,请根据发出的警告选择解决方案。有关更多信息,请参阅 Troubleshoot EC2 instances
    注意:由于持续部署、Amazon EC2 实例运行状况进程守护程序失败或资源利用率高,您的实例可能会处于严重状态。在大多数情况下,环境中的警告状态是暂时的,在您解决了导致问题的原因后会变为绿色(正常)。有关更多信息,请参阅 Health colors and statuses
  • 如果是 Elastic Beanstalk 运行状况进程守护程序失败,请登录您的 Amazon EC2 实例并监控 /var/log/messages/var/log/healthd/daemon.log 以确定原因。
    注意: 如果您看到一条消息,提示所有实例均未发送数据,请参阅如何解决当我的 EC2 实例无法与 Elastic Beanstalk 通信时收到的错误?
  • 对于与 CPU 或内存利用率问题相关的任何警告,请参阅如何解决 Elastic Beanstalk 中的内存和 CPU 问题?

AWS 官方
AWS 官方已更新 1 年前