我如何排查 Elastic Beanstalk 的内存和 CPU 问题?

上次更新时间:2019 年 10 月 15 日

我的 AWS Elastic Beanstalk 应用程序的 CPU 或内存使用量太高。我如何查明原因及修复此问题?

解决方法

配置您的环境以收集指标

要深入了解内存和 CPU 使用情况,请尝试以下操作:

分析您的日志文件以排查您的内存和 CPU 问题

从您的指标中收集数据后,请尝试以下操作:

  1. 查看您的 Elastic Beanstalk 环境中的实例的日志文件
  2. 分析密钥日志文件(如 /var/log/messages)并搜索 CPU 使用高或内存不足 (OOM) 事件的消息。
  3. 使用您的日志文件结果查明此进程为什么会消耗大量 CPU 或内存。
    注意:例如,您可以在 Apache 访问日志或 NGINX 访问日志中找到大量请求。

如果问题持续存在,请尝试以下操作:

  1. 使用 SSH 连接到您的实例
  2. 使用 Linux topfree 命令查看 CPU 和内存消耗详情。

如果您未发现任何错误,则至您的环境的流量负载可能会增加。要处理增加的流量,请尝试以下操作:

  1. 通过增加实例类型纵向扩展。
  2. 通过增加环境的 Auto Scaling 组的大小横向扩展,以降低每个实例的负载。

这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助吗?