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

Заставьте NewRelic уважать процессы ionice'd

На нашем веб-сервере мы выполняем инкрементное резервное копирование наших файлов каждые 4 часа, используя rsnapshot. Чтобы выполнить фактическое копирование файлов, я настроил его на использование специального сценария, cp-nice который имеет следующее содержание:

nice -n19 ionice -c3 cp "$@"

Как видите, это вызывает cp через nice и ionice чтобы не перегружать систему. Насколько я могу судить, это дает желаемый эффект (резервное копирование выполняется без остановки системы).

Однако наша система мониторинга NewRelic выходит из себя каждый раз, когда создается резервная копия, поскольку она обнаруживает, что системный ввод-вывод находится на 100%. Есть ли способ выполнить эти резервные копии, не заставляя NewRelic думать, что на сервере есть проблема? Возможно, есть способ внести процесс в «белый список» в NewRelic, чтобы он не учитывался при вводе-выводе?

Это кажется довольно распространенным вариантом использования - безусловно, кто-то должен был сталкиваться и решать такую ​​ситуацию раньше!

nice и ionice только установить CPU / IO приоритет. Чтобы уточнить, если есть два конкурирующих запроса ввода-вывода, один из которых имеет более высокий приоритет, он будет выполнен первым.

Если нет других конкурирующих операций ввода-вывода / процессора, эти процессы с удовольствием потребят все доступные ресурсы.

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