我有两台具有 Ubuntu 环境的 c3.2xlarge EC2 机器,均位于 us-west-2a AZ。两者都包含与来自 AWS RDS (db.r3.2xlarge) 的 mySQL 数据库相同的代码。两个实例都添加到 ELB 中。两者都安排了一个每天运行两次的 cron。
ELB 已配置为在阈值超过 5.0 时发出警报。两个实例的 CPU 利用率平均为 30 - 50。在高峰时段,会达到 100% 一两分钟,然后恢复正常。但ELB每天不断发出三次警报。此时,两个实例都有
CPU - ~50%
Memory - total - 14979
used - ~6000
free - ~9000
RDS CPU - ~30%
Connections - 200 to 300 /5,000
根据这个https://aws.amazon.com/premiumsupport/knowledge-center/elb-latency-troubleshooting/我发现这些实例没有任何问题。但延迟仍然达到峰值,并且两个实例都无法响应。
到目前为止,我只是从负载均衡器中删除一个实例,重新启动 apache,然后将其加载回来并对其他实例执行相同的操作。这可以完美地完成工作,并且实例和 ELB 在接下来的 6-10 小时内运行良好。但这是不可接受的,因为每天都有两次或三次需要维护服务器,需要重新启动。
我需要知道是否有任何问题或需要采取任何步骤来解决此问题。