什么可能导致这个EC2实例的负载峰值?

我有一个Amazon EC2实例(c1.medium,ami-ed46a784),每32小时左右的负载平均值会出现短暂的高峰。 平均负载通常在0.15左右,但是在这些峰值期间大约15分钟内上升到3+以上。 在此期间,不会增加CPU使用率,磁盘stream量,交换使用率,IRQ中断,apachestream量或我的collectd安装报告的任何其他指标。 禁用已添加到基本安装的所有cron作业不起作用。 这个实例运行chef ,apache,mysql,couchdb,memcached和一个扭曲的python服务 – 所有这些服务目前只能收到很less的stream量。

以下是其中一个峰值期间收集的一些数据:

 / usr / bin / top输出: 
顶部 -  14:31:00上升65天,20:48,1个用户,平均负载:3.00,2.13,1.01 
任务:总共125个,跑步1次,睡眠124次,停止0次,僵尸0次 
 Cpu:0.8%us,0.5%sy,0.0%ni,98.0%id,0.2%wa,0.0%hi,0.1%si,0.4%st 
 Mem:总计1788724k,使用1723448k,使用65276k,使用179284k缓冲区 
 Swap:总计917496k,已使用124k,免费,917372k,caching680404k 
 ... CPU使用率最高的进程只有4%... 
 / usr / bin / iostat输出: 
 Linux 2.6.21.7-2.fc8xen(foo.example.com)11/08/09 _i686_(2 CPU) 
 avg-cpu:%user%nice%system%iowait%steal%idle
           0.78 0.00 0.80 0.19 0.42 97.95

设备:tps Blk_read / s Blk_wrtn / s Blk_read Blk_wrtn
 sda2 0.00 0.00 0.01 8762 74472
 sda3 0.00 0.00 0.00 944 288
 sda1 19.29 0.24 242.63 1354218 1380794096
 sdb 0.34 0.07 6.50 393928 36997032
 / usr / bin / mpstat输出: 
 Linux 2.6.21.7-2.fc8xen(foo.example.com)11/08/09 _i686_(2 CPU) 
 14:31:00 CPU%usr%nice%sys%iowait%irq%soft%steal%guest%idle 
 14:31:00全部0.78 0.00 0.51 0.19 0.00 0.14 0.42 0.00 97.95 
 / usr / bin / free -m输出: 
     caching总共使用的空闲共享缓冲区 
 Mem:1746 1683 63 0 175 664 

收集负载图

是否有可能在同一个物理主机上的其他人的实例可能导致这些尖峰? 有什么其他数据我应该尝试收集在峰值,这将有助于诊断问题? 还有什么可以有助于平均负载?

这个问题也发布在AWS论坛上。

更新#1

我也使用dstat收集数据并在这里发布。 它不显示任何导致负载,据我所知。

我会检查您的主机上运行的cronjobs。 事实上,如果你有一个virt,并在同一个物理主机上有另一个使用例如sata驱动器带宽的virt,你想同时写入磁盘,它可以导致更大的负载,然后通常它会在一个单一的非虚拟化,非共享的环境。 任何IO操作都是如此。 顺便说一句。 你会不会介意在你刚刚看到所有核心的时候按下1。 看来你的主机没有真正的负载,至less没有IOwait或任何types的原因,我们可以看到3.00负载。 我很好奇你能在两个核心上看到什么。 另外如果你可以安装dstat并运行它来检查发生了什么。