Следуя инструкциям здесь http://linoxide.com/how-tos/install-configure-nagios-centos-7/ (но загрузив Nagios 4.0.2 вместо 4.0.7 - я должен использовать эту версию), я достиг точки, когда служба Nagios не запускается.
Команды, которые я пробую -
[root@my-server]# service nagios start
Starting nagios (via systemctl): Job for nagios.service failed. See 'systemctl status nagios.service' and 'journalctl -xn' for details.
[FAILED]
[root@my-server]# systemctl status nagios.service
nagios.service - LSB: start and stop Nagios monitoring server
Loaded: loaded (/etc/rc.d/init.d/nagios)
Active: failed (Result: resources) since Wed 2014-11-05 11:40:27 GMT; 1min 0s ago
Process: 23314 ExecStart=/etc/rc.d/init.d/nagios start (code=exited, status=5)
Nov 05 11:40:27 centos-server systemd[1]: Starting LSB: start and stop Nagios monitoring server...
Nov 05 11:40:27 centos-server nagios[23314]: nagios is stopped
Nov 05 11:40:27 centos-server systemd[1]: PID file /var/nagios/nagios.pid not readable (yet?) after start.
Nov 05 11:40:27 centos-server systemd[1]: Failed to start LSB: start and stop Nagios monitoring server.
Nov 05 11:40:27 centos-server systemd[1]: Unit nagios.service entered failed state.
Который /var/nagios/nagios.pid
файл не существует. Первоначально /var/nagios
каталог не существует, поэтому я его создал. Я пробовал сменить владельца на nagios
и я пытался сменить владельца на root
.
Если я создам пустой файл pid, а затем снова попытаюсь запустить службу, я получаю сообщение об ошибке, в котором говорится, что он содержит недопустимое значение, а затем он удаляется.
Также интересно - я не смог проверить конфигурацию Nagios, как предлагается в этих инструкциях, потому что /usr/local/nagios/bin/nagios
не существует. Не уверен, что с этим случилось.
Какие-нибудь подсказки?
Спасибо
Этот ответ предполагает, что вы устанавливаете с помощью yum
от EPEL. Если вы устанавливаете из исходного кода, файлы могут находиться в разных местах, но идеи те же. Убедитесь, что nagios
у пользователя есть разрешение на эти файлы.
Этот файл /var/nagios/nagios.pid не существует. Изначально каталога / var / nagios не существовало, поэтому я его создал.
Ищите этот раздел в /etc/nagios/nagios.cfg
# LOCK FILE
# This is the lockfile that Nagios will use to store its PID number
# in when it is running in daemon mode.
lock_file=/var/run/nagios/nagios.pid
Это файл, который Nagios создаст при запуске. Более старые версии могут использовать nagios.lock
, или путь может выглядеть примерно так /usr/local/nagios/
Если я создам пустой файл pid, а затем снова попытаюсь запустить службу, я получаю сообщение об ошибке, в котором говорится, что он содержит недопустимое значение, а затем он удаляется.
Вы не должны этого делать! systemd
создаст / удалит его самостоятельно.
systemd
указывает файл pid, в котором он ищет /lib/systemd/system/nagios.service
PIDFile=/var/run/nagios/nagios.pid
Это должно быть так же, как lock_file
в твоем nagios.cfg
, или systemd
будет тайм-аут и остановит ваш nagios
служба.
Также интересно - я не смог проверить конфигурацию Nagios, как предлагается в этих инструкциях, потому что / usr / local / nagios / bin / nagios не существует. Не уверен, что с этим случилось.
Запустите команду whereis nagios
найти это. Вероятно, он находится в /usr/sbin/nagios
Если вы хотите увидеть сообщения, связанные с этой проблемой, запустите fgrep 'systemd' messages | fgrep -i nagios
из /var/log/
Ответом на это, похоже, было перезапуск различных make install-*
команды. Я не обнаружил никаких ошибок во время первой установки, но похоже, что некоторые аспекты все равно не сработали, в первую очередь отсутствие /usr/local/nagios/bin
каталог.
После этого service nagios start
зависает несколько минут, а затем утверждает, что истекло время ожидания. Несмотря на это, Nagios, похоже, работает.
Еще мне пришлось открыть 80 порт.