Ubuntu服务器每天早上9点慢

该服务器运行Ubuntu 12.04.5 LTS并用作Web服务器(apache 2.2.22)和ftp服务器(proftpd 1.3.4a)。 当这种情况发生5分钟左右,没有人可以访问网页。 (这是一个虚拟的私人服务器)

这是此时的最高命令的输出,

top - 09:06:58 up 16 days, 14:29, 1 user, load average: 36.01, 23.39, 10.79 Tasks: 161 total, 38 running, 123 sleeping, 0 stopped, 0 zombie Cpu(s): 18.8%us, 56.2%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 25.0%si, 0.0%st Mem: 8171872k total, 8043880k used, 127992k free, 164308k buffers Swap: 2096124k total, 0k used, 2096124k free, 7007256k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 5348 root 20 0 37536 7092 2104 R 43 0.1 0:43.40 archive.pl 5354 www-data 20 0 174m 6984 4804 R 42 0.1 0:14.65 cron_job_creati 35 root 20 0 0 0 0 R 41 0.0 11:40.57 kswapd0 26 root 20 0 0 0 0 S 39 0.0 1:17.96 sync_supers 5353 www-data 20 0 174m 6984 4804 R 38 0.1 0:13.32 cron_job_creati 5352 www-data 20 0 174m 7232 4940 R 31 0.1 0:10.36 cron_job_creati 5371 root 20 0 25108 308 0 R 24 0.0 0:00.87 master 5358 www-data 20 0 296m 7476 1060 R 21 0.1 0:03.24 apache2 948 root 20 0 25108 1604 1296 S 18 0.0 2:50.30 master 5365 root 20 0 102m 2332 832 R 17 0.0 0:01.10 proftpd 988 root 20 0 102m 2228 728 R 15 0.0 10:38.37 proftpd 5317 www-data 20 0 304m 17m 3344 R 15 0.2 0:28.07 apache2 5369 root 20 0 102m 1916 416 R 15 0.0 0:01.89 proftpd 5225 www-data 20 0 305m 18m 3408 R 11 0.2 0:31.17 apache2 5256 www-data 20 0 304m 17m 3344 R 9 0.2 0:29.83 apache2 5254 www-data 20 0 303m 17m 3336 R 8 0.2 0:27.67 apache2 5345 www-data 20 0 297m 8156 1720 R 6 0.1 0:04.92 apache2 5357 root 20 0 17336 1356 972 R 4 0.0 0:04.48 top 5368 www-data 20 0 296m 6976 624 R 3 0.1 0:00.98 apache2 5363 root 20 0 102m 2128 628 R 1 0.0 0:01.45 proftpd 1 root 20 0 24204 1760 912 S 0 0.0 1:31.62 init 2 root 20 0 0 0 0 S 0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0 0.0 0:53.40 ksoftirqd/0 5 root 20 0 0 0 0 S 0 0.0 0:00.49 kworker/u:0 6 root RT 0 0 0 0 S 0 0.0 0:00.62 migration/0 7 root RT 0 0 0 0 S 0 0.0 3:14.39 watchdog/0 8 root RT 0 0 0 0 S 0 0.0 2:49.77 migration/1 10 root 20 0 0 0 0 S 0 0.0 0:12.92 ksoftirqd/1 12 root RT 0 0 0 0 S 0 0.0 4:01.38 watchdog/1 13 root RT 0 0 0 0 S 0 0.0 0:34.39 migration/2 15 root 20 0 0 0 0 S 0 0.0 0:12.88 ksoftirqd/2 16 root RT 0 0 0 0 S 0 0.0 3:31.75 watchdog/2 17 root RT 0 0 0 0 S 0 0.0 1:10.81 migration/3 19 root 20 0 0 0 0 S 0 0.0 0:08.38 ksoftirqd/3 20 root RT 0 0 0 0 S 0 0.0 3:30.11 watchdog/3 21 root 0 -20 0 0 0 S 0 0.0 0:00.00 cpuset 22 root 0 -20 0 0 0 S 0 0.0 0:00.00 khelper 23 root 20 0 0 0 0 S 0 0.0 0:00.00 kdevtmpfs 24 root 0 -20 0 0 0 S 0 0.0 0:00.00 netns 25 root 20 0 0 0 0 S 0 0.0 0:00.00 kworker/u:1 27 root 20 0 0 0 0 S 0 0.0 0:00.08 bdi-default 28 root 0 -20 0 0 0 S 0 0.0 0:00.00 kintegrityd 29 root 0 -20 0 0 0 S 0 0.0 0:00.00 kblockd 30 root 0 -20 0 0 0 S 0 0.0 0:00.00 ata_sff 31 root 20 0 0 0 0 S 0 0.0 0:00.00 khubd 

我注意到kswapd0,sync_supers只在这个时候运行。 那些是什么? 有足够的物理内存不需要交换内存? archive.pl和其他以cron_开头的命令是我写的脚本,每10分钟运行一次。 他们访问硬盘很多,但从来没有造成服务器运行缓慢。 5分钟左右恢复正常。 提前致谢。

有一件事是肯定的,你的平均load average: 36.01, 23.39, 10.79失控 – load average: 36.01, 23.39, 10.79 。 通过查看内核线程,看起来虚拟机有4个vCPU,经过CPU规范化后,平均负载为9,5.84,2.70,这是非常高的。 对于I / O,内存或CPU超载,任何平均值大于1.0的负载均应进行调查。

在你的情况下,磁盘I / O似乎没有问题, 0.0%wa显示CPU没有浪费任何时间等待I / O,并且似乎没有在D状态的任何进程。

内存 – 我没有看到任何交换, RES下的实际内存使用情况看起来不错。

CPU – 你有38 running任务,在你的最高输出中你可以看到很多R状态的进程,所有进程都在争夺CPU周期。

我会build议通过这个Linux日记链接来解决高负载的平均值。 例如,您可以从9:00 AM窗口中移出cron作业。