Nagios на RHEL 6 (пакет EPEL) перестали работать после обновления

Пакет EPEL для Nagios в RedHat Enterprise Linux 6 был обновлен несколько недель назад с версии 3.4 до версии 4.3. Обновление было выполнено с помощью простой команды yum update , и ничто не указывало на существенное изменение версии.

Хотя после обновления Nagios, казалось, работал нормально (все службы правильно отображаются в веб-интерфейсе), на самом деле мало что работает: сервисные проверки не выполняются, письма тоже не отправляются. Десятки сообщений об ошибках видны в / var / log / messages :

Jan 26 15:58:55 srv1 nagios: Unable to send check for host 'srv3' to worker (ret=-2)
Jan 26 15:58:58 srv1 nagios: Unable to run check for service 'Total Processes' on host 'srv4'
Jan 26 15:59:05 srv1 nagios: Unable to run check for service 'Lab Home Partition' on host 'srv1'

Более того, попытка перезапуска nagios завершается ошибкой, которой не было до обновления: В /var/run/nagios/nagios.pid . Эта часть проблемы, похоже, имеет решение здесь: Nagios Woudn't Start, теперь не останавливается!

После того, как вы заметили, что обновление создало /etc/nagios/nagios.cfg.rpmnew , я запустил diff с исходным файлом конфигурации из RPM 3.5.1, чтобы увидеть, в чем заключаются различия, и соответственно изменил фактический файл конфигурации. Изменения в основном касаются положения некоторых файлов, используемых во время выполнения (вот значения новой версии):

object_cache_file=/var/spool/nagios/objects.cache
precached_object_file=/var/spool/nagios/objects.precache
lock_file=/var/run/nagios/nagios.pid
temp_file=/var/spool/nagios/nagios.tmp
check_result_path=/var/spool/nagios/checkresults

Это решает проблему остановки / перезапуска, упомянутую выше, однако нарушает работу веб-интерфейса, который теперь отображает Ошибка: не удалось прочитать данные конфигурации объекта! . И сервисные проверки по-прежнему не выполняются.

Сообщения об ошибках также присутствуют в /var/log/audit/audit.log , указывая на то, что проблема, вероятно, связана с SELinux (система работает в принудительном режиме):

type=AVC msg=audit(1516991640.421:263116): avc:  denied  { getattr } for  pid=29_exec_t:s0 tclass=file
type=SYSCALL msg=audit(1516991640.421:263116): arch=c000003e syscall=4 success=n fsgid=494 tty=(none) ses=4000 comm="check_procs" exe="/usr/lib64/nagios/plugins

Действительно, временная установка SELinux в разрешающий режим полностью решает проблему; однако это не решение. Как правильно обновить настройки SELinux, сохраняя SELinux в принудительном режиме?

1
задан 26 January 2018 в 23:59
1 ответ

Необходимые профили SELinux доступны в пакете nagios-selinux , также доступном в EPEL. К сожалению, обновление не устанавливает его автоматически при переходе с Nagios 3.5.1 на Nagios 4.3.4, и поэтому его нужно добавлять вручную:

yum install nagios-selinux

Конечно, изменения в файлах конфигурации (импорт новых путей из .rpmnew файл конфигурации) также необходимы для правильной работы Nagios.

2
ответ дан 3 December 2019 в 20:17

Теги

Похожие вопросы