Просто установил nagios на центральную машину и nrpe на 10 удаленных Linux-машинах и начал их отслеживать. Отлично работает. Я могу получить загрузку процессора, текущих пользователей, процессы, mysql и т. Д. Я не могу найти способ отслеживать использование памяти с помощью основных плагинов. Что мне не хватает? Нужен ли для этого внешний плагин?
Я предлагаю вам лучше контролировать использование свопа. проверять, выписываться check_swap plugin - он устанавливается по умолчанию [по крайней мере, в debian].
да, я действительно подумал, почему они не включили плагин, который будет проверять память, когда они включили check_swap и check_disk ... хорошо, что-то не так ... но плагин check_memory доступен на exchange.nagios.org http://exchange.nagios.org/directory/Plugins/Operating-Systems/Solaris/check_mem-2Epl/details
это работает довольно хорошо ... это сценарий Perl, поэтому даже установка не требуется ... это ссылка http://sysadminsjourney.com/content/2009/06/04/new-and-improved-checkmempl-nagios-plugin/ со страницы плагина выше ... простая и хорошая документация ...
$ /usr/local/nagios/libexec/check_mem.pl -w 10 -c 5 -f
ВНИМАНИЕ - 9.9% (406520 kB) бесплатно! | TOTAL = 4113824KB ;;;; USED = 3707304KB ;;;; БЕСПЛАТНО = 406520КБ ;;;; CACHES = 816947KB ;;;;
Итак, шаги настройки просты:
Работа с Nagios Server и NRPE Client для автоматического перезапуска служб в случае сбоя 13 января 2015 г.
Выполнение удаленных команд с помощью Nagios и NRPE
1. Установка NRPE на удаленный хост:
об / мин -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm yum –enablerepo = epel -y install nrpe nagios-plugins yum –enablerepo = epel -y list nagios-plugins * vim /etc/nagios/nrpe.cfg
service nrpe start chkconfig nrpe on
2. Чтобы выполнить команды на удаленном клиенте nagios, выполните следующие действия:
vim /etc/nagios/nrpe.cfg a. Измените с 0 на 1, как показано ниже: dont_blame_nrpe = 1 b. Настройка команды в NRPE Откройте файл nrpe.cfg в текстовом редакторе и добавьте следующую строку, чтобы определить команду в NRPE. Добавьте указанную ниже команду под разделом команд в файле nrpe.cfg: command [runcmd] = sudo service $ ARG1 $ restart
vim / etc / sudoers nagios ALL = NOPASSWD: / sbin / service nrpe ALL = NOPASSWD: / sbin / service
Тестирование команды runcmd с сервера nagios:
Тестирование команд с сервера Nagios Перейдя к командной строке Nagios, сценарий перезапуска службы будет использовать Check_Nrpe для отправки команды на хост службы. Перейдите в командную строку Nagios и введите следующие команды:
/ usr / local / nagios / libexec / check_nrpe -H 192.168.5.180 -p 5666 -c runcmd -a httpd
Выполнение удаленных команд с помощью Nagios NRPE и обработчика событий Настройка клиента / удаленного компьютера nagios 1. Измените nrpe.cfg, как показано ниже: Измените dont_blame_nrpe = 0 на not_blame_nrpe = 1 2. Добавьте указанную ниже настраиваемую команду в nrpe.cfg как показано ниже: команда [event-ntp] = / usr / lib64 / nagios / plugins / event-ntp $ ARG1 $ $ ARG2 $ $ ARG3 $ 3. Создайте обработчик событий, как показано ниже: vim / usr / lib64 / nagios / плагины / событие-ntp
#!/bin/bash
case “$1″ in
OK)
;;
WARNING)
echo -e “Running NTP Query” “\n”
ntpq -p | mailx -s “HOSTNAME – NTP Query” neeraj.gupta@teamcomputers.com
;;
UNKNOWN)
;;
CRITICAL)
case “$2″ in
SOFT)
case “$3″ in
3)
echo -e “Running NTP Query & Restarting NTP Service” “\n”
ntpq -p | mailx -s “HOSTNAME – NTP Query – Restarted NTPD” \
neeraj.gupta@teamcomputers.com &&
/usr/bin/sudo /sbin/service ntpd restart
;;
esac
;;
HARD)
echo -e “Running NTP Query & Restarting NTP Service” “\n”
ntpq -p | mailx -s “HOSTNAME – NTP Query – Restarted NTPD” \
neeraj.gupta@teamcomputers.com &&
/usr/bin/sudo /sbin/service ntpd restart
;;
esac
;;
esac
exit 0
Дайте разрешение на выполнение и измените владельца и группу: chmod + x / usr / lib64 / nagios / plugins / event-ntp chown nagios: nagios / usr / lib64 / nagios / plugins / event-ntp
Сложный и, вероятно, не самый безопасный способ сделать это - изменить файл sudoer, чтобы позволить пользователю nagios выполнять системные команды.
visudo добавьте следующее: User_Alias NAGIOS = nagios, nagcmd Cmnd_Alias NAGIOSCOMMANDS = / sbin / service Значения по умолчанию: NAGIOS! requiretty NAGIOS ALL = (ALL) NOPASSWD: NAGIOSCOMMANDS
Настройка обработчика событий на сервере Nagios Первое, что вам нужно сделать, это создать команду event-ntp в файле commands.cfg:
определить команду {имя_команды event-ntp строка_команды / usr / local / nagios / libexec / check_nrpe -H $ HOSTNAME $ -c event-ntp -a $ SERVICESTATE $ $ SERVICESTATETYPE $ $ SERVICEATTEMPT $}
определить службу {использовать имя_хоста локальной службы neeraj-test service_description Проверка синхронизации времени event_handler event-ntp check_command check_nrpe! check_ntp}
Если все пойдет хорошо, вы должны получить электронное письмо от своего клиента с выводом команды ntpq -p и перезапуском службы ntpd. Если у вас есть какие-либо проблемы, вы не получаете электронную почту или не выполняете указанный сценарий, установите уровень отладки = 1 в nrpe.cfg, перезапустите nrpe, выполните вышеуказанный тест event-ntp и проверьте свои журналы. Как видите, выполнять сценарии обработчиков событий не так уж сложно, и это экономит время администратора, когда nagios может выполнять работу по критическим предупреждениям системы / хоста.