Pilat: Вы бы остановили всё и проверили скорость чтения с диска при нулевой активности. Может диски давно умерли.
production, нельзя останавливать
netwind: По-моему, nginx многовато пишет. Вот от лишней записи имеет смысл избавляться.
Опытным путем установил, что nginx пишут в access_log. Отключил все access_log и запись упала почти до 0.
Но глобально это ничего не изменило.
netwind: Используются ли буферы ответов, то есть создаются ли файлы в /var/spool/nginx/cache/
Есть кэширование страниц целиком, но в /tmpfs . Отключение его опять же не изменило нагрузку на диск (скорее стало хуже от самого факта отключения кэширования, оно сокращает примерно на 10% запросы к бэкаэнду).
Также попробовал уменьшить количество workier-ов в nginx. Не помогло.
Все вышеописанное делал по отдельности с перезапуском nginx.
---------- Добавлено 02.05.2016 в 11:22 ----------
Сегодня recync опять запустился. Сейчас пишет со скоростью 40Mb/s и пока проблем нет. Но и нагрузки на сервер нет (чуть больше половины пиковой).
Т.е. моя конструкция в cron не сработала
1 1 15-21 * Mon root /usr/sbin/raid-check
Как его заставить запускаться всего 1 раз в какой-нибудь понедельник месяца?
---------- Добавлено 02.05.2016 в 11:27 ----------
Pilat: это половина от пиковой нагрузки? Цифры то какие-то совсем крошечные.
Да, абсолютные цифры крошечные.
Может быть проблема с какими-то лимитами на открытые файлы и т.п.?
---------- Добавлено 02.05.2016 в 11:30 ----------
В php-коде довольно много вызовов file_exists()- и getimagefilesize() (для локальных файлов)
Могут они так сильно дергать?
И есть 2 папки с 30к подпапок в каждой (и в каждой подпапке картинки). Может быть в этом корень зла?
---------- Добавлено 02.05.2016 в 11:40 ----------
Вот так сейчас выглядит iotop
510 be/4 root 0.00 B/s 0.00 B/s 0.00 % 17.34 % [xfsaild/md125]
18085 be/4 nginx 32.67 K/s 2.39 K/s 0.00 % 17.09 % nginx: worker process
18078 be/4 nginx 91.25 K/s 2040.11 B/s 0.00 % 17.06 % nginx: worker process
18082 be/4 nginx 35.06 K/s 5.58 K/s 0.00 % 15.49 % nginx: worker process
23469 be/4 user 49.41 K/s 0.00 B/s 0.00 % 15.01 % php-fpm: pool user
18080 be/4 nginx 47.42 K/s 816.04 B/s 0.00 % 15.00 % nginx: worker process
18083 be/4 nginx 76.90 K/s 2.39 K/s 0.00 % 14.80 % nginx: worker process
18081 be/4 nginx 49.81 K/s 2.39 K/s 0.00 % 14.08 % nginx: worker process
18079 be/4 nginx 81.68 K/s 2040.11 B/s 0.00 % 11.81 % nginx: worker process
18084 be/4 nginx 29.88 K/s 1224.07 B/s 0.00 % 10.01 % nginx: worker process
23168 be/4 user 28.69 K/s 0.00 B/s 0.00 % 7.51 % php-fpm: pool user
23447 be/4 user 22.31 K/s 0.00 B/s 0.00 % 7.02 % php-fpm: pool user
23202 be/4 user 21.92 K/s 0.00 B/s 0.00 % 6.38 % php-fpm: pool user
22965 be/4 user 21.12 K/s 0.00 B/s 0.00 % 5.76 % php-fpm: pool user
23097 be/4 user 6.38 K/s 0.00 B/s 0.00 % 5.07 % php-fpm: pool user
23096 be/4 user 15.14 K/s 0.00 B/s 0.00 % 4.96 % php-fpm: pool user
23199 be/4 user 12.75 K/s 0.00 B/s 0.00 % 4.52 % php-fpm: pool user
23176 be/4 user 6.77 K/s 0.00 B/s 0.00 % 4.38 % php-fpm: pool user
23033 be/4 user 32.67 K/s 0.00 B/s 0.00 % 4.11 % php-fpm: pool user
23107 be/4 user 7.57 K/s 0.00 B/s 0.00 % 3.92 % php-fpm: pool user
23117 be/4 user 7.97 K/s 0.00 B/s 0.00 % 3.49 % php-fpm: pool user
22946 be/4 user 10.76 K/s 0.00 B/s 0.00 % 3.35 % php-fpm: pool user
23210 be/4 user 9.16 K/s 0.00 B/s 0.00 % 3.33 % php-fpm: pool user
23123 be/4 user 5.98 K/s 0.00 B/s 0.00 % 3.29 % php-fpm: pool user
23136 be/4 user 25.10 K/s 0.00 B/s 0.00 % 3.16 % php-fpm: pool user
23144 be/4 user 5.58 K/s 0.00 B/s 0.00 % 3.14 % php-fpm: pool user
23139 be/4 user 12.75 K/s 0.00 B/s 0.00 % 2.98 % php-fpm: pool user
23227 be/4 user 5.58 K/s 0.00 B/s 0.00 % 2.98 % php-fpm: pool user
23125 be/4 user 13.15 K/s 0.00 B/s 0.00 % 2.93 % php-fpm: pool user
23145 be/4 user 6.38 K/s 0.00 B/s 0.00 % 2.86 % php-fpm: pool user
23133 be/4 user 8.77 K/s 0.00 B/s 0.00 % 2.71 % php-fpm: pool user
---------- Добавлено 02.05.2016 в 11:58 ----------
Нет, я не прав. Отключение access_log дало результат. la постепенно снижается и тормозов нет. Но пока не знаю, что будет вечером под пиковой нагрузкой.
Petrovich77, нет, установка приложений не годится.
Сервисом sms.ru кто-нибудь пользуется? Видел сообщения, что он в последнее время нестабильно работает.
---------- Добавлено 02.07.2016 в 22:11 ----------
В идеале нужен почтовый сервис, который сам шлет sms-уведомления о новых письмах. Но проверил Mail.ru, Yandex, Gmail, Rambler - нет
На современных смартфонах email-приложения выдают бесплатные уведомления о приходе новой почты.
Не вариант использовать?
Нет, нужно на обычном телефоне.
Частично решил проблему с нагрузкой на диски.
Поставил vm.swappiness=0
(было 10)
recync-а ещё не было, но нагрузка от резервного копирования (по la) упала в 2 раза.
думаю так будет лучше:
1 1 1-6 * Mon root /usr/sbin/raid-check
У меня было прописано
Но recync запустился сегодня
Я повторюсь - как в дебиане.
Нет у меня сервера с Дебианом под рукой :)
Первый понедельник месяца получился так:
---------- Добавлено 02.05.2016 в 15:03 ----------
Делать замеры io под рабочим md2_recynd наверное не имеет смысла. Завтра попробую под чистой нагрузкой посмотреть.
Отчет выше - по 10 секунд.
Вы бы остановили всё и проверили скорость чтения с диска при нулевой активности. Может диски давно умерли.
production, нельзя останавливать
По-моему, nginx многовато пишет. Вот от лишней записи имеет смысл избавляться.
Опытным путем установил, что nginx пишут в access_log. Отключил все access_log и запись упала почти до 0.
Но глобально это ничего не изменило.
Используются ли буферы ответов, то есть создаются ли файлы в /var/spool/nginx/cache/
Есть кэширование страниц целиком, но в /tmpfs . Отключение его опять же не изменило нагрузку на диск (скорее стало хуже от самого факта отключения кэширования, оно сокращает примерно на 10% запросы к бэкаэнду).
Также попробовал уменьшить количество workier-ов в nginx. Не помогло.
Все вышеописанное делал по отдельности с перезапуском nginx.
---------- Добавлено 02.05.2016 в 11:22 ----------
Сегодня recync опять запустился. Сейчас пишет со скоростью 40Mb/s и пока проблем нет. Но и нагрузки на сервер нет (чуть больше половины пиковой).
Т.е. моя конструкция в cron не сработала
Как его заставить запускаться всего 1 раз в какой-нибудь понедельник месяца?
---------- Добавлено 02.05.2016 в 11:27 ----------
это половина от пиковой нагрузки? Цифры то какие-то совсем крошечные.
Да, абсолютные цифры крошечные.
Может быть проблема с какими-то лимитами на открытые файлы и т.п.?
---------- Добавлено 02.05.2016 в 11:30 ----------
В php-коде довольно много вызовов file_exists()- и getimagefilesize() (для локальных файлов)
Могут они так сильно дергать?
И есть 2 папки с 30к подпапок в каждой (и в каждой подпапке картинки). Может быть в этом корень зла?
---------- Добавлено 02.05.2016 в 11:40 ----------
Вот так сейчас выглядит iotop
---------- Добавлено 02.05.2016 в 11:58 ----------
Нет, я не прав. Отключение access_log дало результат. la постепенно снижается и тормозов нет. Но пока не знаю, что будет вечером под пиковой нагрузкой.
Kpd, начните с изучения данных от iotop.
Сейчас нагрузка примерно половина от пиковой.
Получается, что пишет только nginx логи (статика в лог не пишется).
И читает больше всех nginx
Может быть так, что nginx очень активно читает?
---------- Добавлено 30.04.2016 в 11:31 ----------
Вообще я заметил, что диски больше тормозят на чтении.
Например, создание бэкапов не вызывает заметных тормозов.
Но перекачка бэкапов через NFS уже заметна (la подскакивает с 3 до 10-12).
допустим, atop покажет колонку busy. И так ясно что она у вас к 100% приближается,
Вы правы. Под пиковой нагрузкой 60-80%
Завтра попробую сделать тюнинг системы. На сервере только php-fpm и nginx. Скорее всего кто-то из них.
xcache пишет кэш в /tmp. Есть смысл сделать для него tmpfs ?
В nginx 8 worker-ов. Есть смысл убавить до 4?
скоро так упретесь в IO
Как в Centos посмотреть нагрузку на диск и оценить сколько ещё он выдержит?
задайте порог скорости проверки массива, например 50Мб/сек. Это не сожрет весь io на сервере.
Под пиковой нагрузкой веб-сервер загинался, если md_recync работал на 20Mб/c. На 10 нормально.
сколько было без нагрузки не знаю, но наверное все 200 (дефолтная настройка).
Как бы понять. что случилось - физически диски не могут дать дальше, или нужно что-то подтюнинговать в системных параметрах?