我在 us-west-2a AZ 有两台带有 Ubuntu 环境的 c3.2xlarge EC2 机器。两者都包含与来自 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 小时内运行良好。但这是不可接受的,因为每天两次或三次必须照顾服务器,需要重新启动。
我需要知道是否有任何问题或需要采取任何步骤来解决此问题。