
- шинкен 2.0.3
- нрпе 2.15
Мы используемнскадля выполнения пассивных проверок.
define service {
name salt-service
register 0
active_checks_enabled 0
passive_checks_enabled 1
check_freshness 1
freshness_threshold 600
max_check_attempts 2
check_interval 5
retry_interval 3
}
define service {
use salt-service
service_description syncthing_procs-2
host_name x
check_command check_nrpe!syncthing_procs!10
display_name Syncthing Procs
}
Хотя время freshness_threshold
составляет 10 минут, есть случай, когда пассивные проверки устаревают:
6 окт 09:52:36 x shinken: [Вт 6 окт 09:52:35 2015] Предупреждение: результаты службы 'syncthing_procs-2' на хосте 'x' устарели на 0д 0ч 10м 16с (порог=16714д 9ч 42м 35с). Я принудительно запускаю немедленную проверку службы.
Ой, а откуда взялось, threshold=16714d 9h 42m 35s
когда я установил 10 минут в файле конфигурации? Конечно, системное время на Shinken VM и хосте 'x' одинаковое.
Есть много устаревших служб, как эта. Как вы можете видеть, после того, как пассивная проверка устарела, мы используем check_nrpe
для выполнения активной проверки. И проблема в том, что теперь у нас так много процессов nrpe, что кажется зависшим:
nagios 31404 1 0 Sep18 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 31727 1 0 Oct01 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 31732 1 0 Oct01 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 32148 1 0 Sep30 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 32157 1 0 Sep30 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
Я просто вставляю несколько. На самом деле, там > 200 процессов.
Итак, помимо неправильного порога, у меня есть еще один вопрос: почему после этого так много процессов nrpe? Я знаю, что при выполнении активной проверки будет разветвлен новый процесс. Но он должен исчезнуть после завершения проверки, верно?
А, я знаю ответ на первый вопрос.
Ой, а откуда взялось пороговое значение = 16714д 9ч 42м 35с, если в файле конфигурации я установил его на 10 мин?
Похоже, что между Shinken и Nagios есть небольшая разница. Это время эпохи в днях/часах/минутах/секундах.
expr $(date +%s) / 3600 / 24
16714
решение1
невозможно сказать, что именно пошло не так в вашем случае. Поэтому вот некоторые мысли:
Мы используем nsca для выполнения пассивных проверок. Почему после этого так много процессов nrpe? Я знаю, что при выполнении активной проверки будет разветвлен новый процесс. Но он должен исчезнуть после завершения проверки, верно?
Кажется, nsca не работает должным образом, затем были проведены активные проверки. Убедитесь, что nsca работает.
Хотя freshness_threshold составляет 10 минут, есть случай, когда пассивные проверки устаревают
или nsca не настроен на отправку пассивного результата в shinken
Я знаю, что новый процесс будет разветвлен при выполнении активной проверки. Но он должен исчезнуть после завершения проверки, верно?
Может быть, проверки не были сделаны и связи сохранены другой стороной (шинкен)