Этот сервер работает под управлением Ubuntu 12.04.5 LTS и используется как веб-сервер (apache 2.2.22) и ftp-сервер (proftpd 1.3.4a). Никто не может получить доступ к веб-страницам, если это происходит в течение 5 минут или около того. (Это виртуальный частный сервер)
Это результат работы команды top на данный момент,
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
. Посмотрев на потоки ядра, оказалось, что виртуальная машина имеет 4 виртуальных ЦП, и после нормализации для ЦП средняя загрузка составляет 9,5,84, 2,70, и это действительно много. Любая средняя загрузка выше 1,0 должна быть исследована на предмет перегрузки ввода-вывода, памяти или процессора.
В вашем случае дисковый ввод-вывод не является проблемой, 0.0%wa
показывает, что ЦП не тратит впустую время на ожидание ввода-вывода, и, похоже, в D
штат.
Память - я не вижу подкачки и фактического использования памяти в RES
выглядит хорошо.
CPU - у вас есть 38 running
задач и в главном выводе вы можете увидеть множество процессов в R
состояние, все борются за цикл ЦП.
Я бы рекомендовал пройти ссылка на этот журнал Linux для устранения проблем с высокой средней нагрузкой. Например, вы можете начать с перемещения заданий cron из окна 9:00.