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

Командный файл nagios.cmd # 015 не существует проблема, если пассивная проверка отправляется демону NSCA

Введение

Поскольку /usr/local/nagios/etc/nsca.cfg заменяется конфигурацией по умолчанию, если opsview был перезапущен, ссылка на этот файл, который находится в /etc/init.d/opsview, была изменена на / usr / local / nagios / etc / nsca_puppet.cfg, а последний развертывается с использованием шаблона Puppet ERB.

Цель

Цель состоит в том, чтобы отправлять пассивные проверки с помощью nsca в Opsview.

Гипотеза заключалась в том, что выполнялись:

echo -e "HOST\tService\t0\tRemote File does not exist" | \
sudo /usr/local/nagios/bin/send_nsca -H host -c \
/usr/local/nagios/etc/send_nsca.cfg

обновит (пассивную) проверку, которая находится в Opsview.

Результат

Заключение в / var / log / messages указывает на следующее:

Jan 24 14:27:37 host nsca[X]: 
Handling the connection for <ip>...
Jan 24 14:27:37 host nsca[X]: 
Command file '/usr/local/nagios/var/rw/nagios.cmd#015' 
does not exist, attempting to use alternate dump file 
'/dev/null' for output
Jan 24 14:27:37 host nsca[X]: 
SERVICE CHECK -> Host Name: 'HOST', Service Description: 
'Service', Return Code: '0', Output: 'Remote File does 
not exist' client <ip>
Jan 24 14:27:37 host nsca[X]: End of connection for <ip>...

Попытки решить проблему

1) Возможно, команду nsca следует выполнить как пользователь nagios

sudo -u nagios /usr/local/nagios/bin/send_nsca

Не решает проблему

2) работает ли ncsa?

да

user@host:~$ ps -ef | grep nsca
nagios   PID     1  0 13:38 ?        00:00:00 
/usr/local/nagios/bin/nsca -c 
/usr/local/nagios/etc/nsca.cfg --single

3) работает ли отправка команд ncsa с localhost

Нет, тоже не работает

4) Неправильные разрешения nagios.cmd?

Кажется, все в порядке

user@host:~$ ls -ltr /usr/local/nagios/var/rw/
total 4
-rw-rw-r--. 1 nagios nagios 1321 Jan 23 22:13 config_output.last_okay
srw-rw----. 1 nagios nagcmd    0 Jan 24 13:38 nagios.qh
prw-rw----. 1 nagios nagcmd    0 Jan 24 13:38 nagios.cmd
srw-rw----. 1 nagios nagcmd    0 Jan 24 13:38 opsviewd.cmd

5) Работает ли отправлять другие проверки, кроме пассивных, в Opsview с помощью nsca

Проблема возникает для всех видов проверок

6) nagios.cmd#015 does not exist...? nagios.cmd настраивался? Или не?

Да это правильно

7) связанные с этой версией NSCA ошибки?

user@host:~$ sudo /usr/local/nagios/bin/nsca --version

NSCA - Nagios Service Check Acceptor
Copyright (c) 2000-2007 Ethan Galstad (www.nagios.org)
Version: 2.7.2
Last Modified: 07-03-2007
License: GPL v2
Encryption Routines: AVAILABLE

Кажется, все в порядке, поскольку в Интернете не было обнаружено никаких проблем.

8) Кому разрешено писать в nagios.cmd?

Пользователю не разрешено писать:

user@host:~$ echo hello >> /usr/local/nagios/var/rw/nagios.cmd
-bash: /usr/local/nagios/var/rw/nagios.cmd: Permission denied

а нагиос - это:

user@host:~$ sudo su - nagios
nagios@host:~$ echo hello >> /usr/local/nagios/var/rw/nagios.cmd
nagios@host:~$

/usr/local/nagios/etc/nsca.cfg

command_file=/usr/local/nagios/var/rw/nagios.cmd

Вопросы

Можно задать несколько вопросов, но на данный момент предполагается, что проверки не могут быть обработаны, поскольку они не записываются в nagios.cmd.

  1. Где #015 родом из?

В соответствии с этот вопрос и ответ а #015 в системном журнале соответствует \r.

Проблема была вызвана тем, что CR были добавлены шаблонами Puppet ERB.

Выполнение следующая команда:

sudo sed -i 's/\r//' /usr/local/nagios/etc/nsca.cfg 

и перезапуск opsview решил проблему.

Чтобы решить Проблема с шаблоном CR в Puppet, используйте content => regsubst(template("opsview/nsca.cfg.erb"), '\r', '', 'G'),.

Вы не упомянули о запуске сервер nsca. Это самая важная часть.

Send_nsca нужны данные. Здесь ваш тест недействителен:

1) Perhaps the nsca command should be issued as the nagios user

sudo -u nagios / usr / local / nagios / bin / send_nsca

Скорее, вам нужно сначала выполнить эхо и передать данные в send_nsca. Ваш демон nsca на стороне сервера - это то, что нужно запускать от имени пользователя / группы nagios / nagcmd.

Обратитесь к следующему руководству для получения дополнительных сведений о том, как настроить nsca:

http://munin.readthedocs.org/en/latest/tutorial/nagios.html