AWS EC2 t2.small实例CPU利用率每天定期更新至100%

时间:2019-01-04 16:43:54

标签: amazon-web-services amazon-ec2 cpu-usage

我的EC2 t2.small实例CPU利用率每天同时达到100%,大约在服务器时间21:25到21:30之间。

enter image description here

我检查了syslog和apache日志,发现在此期间没有异常。另外,我检查了我的cron作业和系统cron作业,发现当时没有每日的cron作业运行(/etc/cron.daily计划为6:25,并根据日志在该时间正确执行)。

有什么想法会导致这种行为?

操作系统:Ubuntu 16.04

2 个答案:

答案 0 :(得分:0)

经过大量搜索,日志记录,反复试验和错误,我发现apache2引起了这种情况。 由于某些原因,该过程有时会以100%的速度挂起,特别是在ssllabs.com上执行SSL测试时。在Apache error_log中找到此行:

[ssl:error] [pid 29110] [客户端64.41.200.104:58242] AH02042:拒绝客户端发起的重新协商

同样,在经过反复试验后,解决此问题的解决方案是更新/etc/apache2/mods-available/ssl.conf中的SSLCipherSuite apache指令

这是我使用的值: SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA -AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256

此更改之后,该问题不再重复。 我希望这会帮助处于相同情况的其他人。

答案 1 :(得分:0)

我的服务遇到了类似的问题(每日 cron 作业的 CPU 峰值)。结果证明,logrotate 每天早上都在使用 pbzip2 压缩一个非常大的日志文件。对代码进行了更改以减少垃圾邮件日志,从而解决了问题。