Назад | Перейти на главную страницу

Высокая активность дискового ввода-вывода на сервере CentOS

У меня есть около 16 веб-сайтов в CentOS, и у меня возникают некоторые проблемы в часы высокой посещаемости, похоже, это высокая активность дискового ввода-вывода, вызывающая общее замедление.

Я установил поверх, и вот что я вижу внизу (сервер был перезагружен, поэтому значения такие низкие):

*** system and process activity since boot ***

PID         RDDSK       WRDSK       WCANCL      DSK     CMD        1/18
2176        1.7G        7.3G        854.4M      39      mysqld
671         1248K       3.0G        0K          13      flush-8:0
566         0K          1.1G        0K          5       jbd2/sda2-8
2401        124.2M      529.1M      22408K      3       crond
2032        2.2G        502.0M      0K          12      nginx
2360        425.8M      115.3M      4188K       2       httpd

flush-8: 0 и jbd2 / sda2-8 - это процессы, которые я вижу с iotop используя 99% в столбце IO>, и это процессы, которые больше всего пишут на жесткий диск (после mysql). Из того, что я видел в Google, это могло быть вызвано какой-то ошибкой, связанной с ext4, текущее ядро:

Linux srvr.com 2.6.32-71.29.1.el6.x86_64 # 1 SMP Mon Jun 27 19:49:27 BST 2011 x86_64 x86_64 x86_64 GNU / Linux

Я попросил службу поддержки хостинга обновить ядро, и они попытались, но теперь они говорят, что сервер не загружается с новым установленным ядром, и им пришлось вернуться к предыдущему, они не очень помогают.

Кто-нибудь знает, как я могу решить проблему высокой загрузки диска, вызванной процессами flush-8: 0 и jbd2 / sda2-8?

Вы не предоставили нам достаточно информации, чтобы я мог сказать, но я сначала догадываюсь, что вы чрезмерно используете оперативную память и сбрасываете своп. с atop, покажите нам список памяти (нажмите m), включая раздел заголовка.

Не вините свою поддержку. Ваше ядро ​​и ext4 вряд ли будут проблемой.

flush-8:0 это поток ядра, работает при промывке dirty Буфер RAM и / или swap на диск, jbd2/sda2-8 это поток ядра, который работает с журналированием файловых систем - они интенсивны, ввод-вывод полученные результатыне причины вашей проблемы.

more похоже, что ваша проблема - интенсивное использование диска mysql. пока JBD используется - похоже, выполняется несколько операций записи.

проверьте, какие файлы были изменены mysql, или проверьте его журналы, использование БД, оптимизацию таблиц и настроены ли демоны mysql на использование максимально возможного объема ОЗУ для кэширования.

ты можешь использовать mysqltuner для общих рекомендаций.

если записи останутся, возможно, вам нужно увеличить скорость диска для большего количества IOPS.

проверьте, какие файлы пишутся чаще. имеет значение не только скорость МБ / с, вы можете написать 20 МБ, но потреблять больше операций ввода-вывода, чем другие получают при 200 МБ.

Видимо mysql не любит ext4. Обновление ядра или изменение каталога данных mysql на раздел ext3 должно решить эту проблему. http://ubuntuforums.org/showthread.php?t=1313834&page=2