Я пытаюсь установить NRPE с основным примером как первый шаг к развертыванию его. Для простоты я выполняю и NRPE и Nagios локально. NRPE и Nagios оба, кажется, работают, но использовать check_nrpe от Nagios перестало работать загадочно.Править: Я использую версию 4.1.1 Nagios и 2.15 из NRPE.
Я думаю, что NRPE работает, потому что я могу выполнить check_nrpe вручную:
/s/l/n/nagios_instance ❯❯❯ libexec/check_nrpe -H 127.0.0.1 -p 5667 -c check_total_procs ⏎
PROCS CRITICAL: 536 processes | procs=536;150;200;0;
Я думаю, что Nagios работает (и предоставляет корректные аргументы), потому что я записал эту простую регистрацию Python, файл, названный check_hello_world.py, который живет в libexec каталоге:
#!/usr/bin/env python
import sys
print str(sys.argv)
raise SystemExit, 2
Соответствующие строки моей конфигурации nagios похожи на это:
define host {
use linux-server
host_name yourhost
alias My first Apache server
address 127.0.0.1
}
define command {
command_name check_procs_nrpe
command_line $USER1$/check_hello_world.py –H "$HOSTADDRESS$" -p 5667 -c "check_total_procs"
#command_line $USER1$/check_nrpe –H "$HOSTADDRESS$" -p 5667 -c "check_total_procs"
}
define service {
use generic-service
host_name yourhost
service_description Check using the hello world plugin
check_command check_procs_nrpe
}
Как Вы видите, я определяю команду check_procs_nrpe с одной из двух команд, или простой сценарий Python или команда nrpe для проверки procs, который работал из командной строки. Когда я использую сценарий Python, в течение нескольких минут я получаю электронное письмо с текстом:
Additional Info:
[/spare/local/nagios/nagios_instance/libexec/check_hello_world.py, –H, 127.0.0.1, -p, 5667, -c, check_total_procs]
Это, кажется, показывает, что Nagios работает правильно, инициировав предупреждения, посылая электронные письма и корректные аргументы разрешения. Когда я изменяю команду, чтобы использовать check_nrpe и повторно выполнить Nagios, я получаю электронное письмо с текстом:
Additional Info:
Incorrect command line arguments supplied
Я действительно не знаю, куда пойти затем. Я не имею корня на этом поле и таким образом не могу легко реконфигурировать rsyslog, чтобы попытаться получить регистрирующуюся информацию. Счастливый обеспечить дополнительную информацию о запросе. Какие-либо идеи?
В итоге проблема заключалась в том, что тире в '-H' на самом деле не было тире. Это было тире. На самом деле вы можете довольно ясно увидеть это в тексте выше, если поищете. К сожалению, Source Code Pro (шрифт, который я использую в своем терминале и, следовательно, в vim)на самом деле не различает тире и дефисы. Я повторно открыл проблему по этому поводу, а пока я ищу новый шрифт (и добавляю различение тире в свой список критериев).