Задача стоит о построении мониторинга сети серваков под Win 2k8 (количество - более 50 шт). Для мониторинга выбрана Freebsd 8.3, на нее установлен apache и nagios. На нагиосе прописан конф файлик для мониторинга виндовых серваков:
/usr/local/etc/nagios/objects/windows.cfg
#Windows
define host{
use windows-server
host_name WIN
alias Server 2008
address 10.0.0.2
}
define service{
use generic-service
host_name WIN
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION
}
define service{
use generic-service
host_name WIN
service_description Uptime
check_command check_nt!UPTIME
}
define service{
use generic-service
host_name WIN
service_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90
}
define service{
use generic-service
host_name WIN
service_description Memory Usage
check_command check_nt!MEMUSE!-w 80 -c 90
}
define service{
use generic-service
host_name WIN
service_description C: Drive Space
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
define service{
use generic-service
host_name WIN
service_description D: Drive Space
check_command check_nt!USEDDISKSPACE!-l d -w 80 -c 90
}На Win 2k8 установлен nsclient++ 4.0
И все работает прекрасно, да вот оперативка считается не так, как того требует ТЗ. Nagios выводит результат мониторинга оперативной памяти в формате: ОЗУ + swap, подскажите как добиться вывода результата мониторинга, только ОЗУ, без свопа?
>[оверквотинг удален]
> use generic-service
> host_name WIN
> service_description D: Drive Space
> check_command check_nt!USEDDISKSPACE!-l d -w 80 -c 90
> }
> На Win 2k8 установлен nsclient++ 4.0
> И все работает прекрасно, да вот оперативка считается не так, как того
> требует ТЗ. Nagios выводит результат мониторинга оперативной памяти в формате: ОЗУ
> + swap, подскажите как добиться вывода результата мониторинга, только ОЗУ, без
> свопа?check_command check_nt!MEMUSE!-w 80 -c 90
переписать чуть чуть комманду check_nt с параметром MEMUSE
ну или на крайний случай вызывать её, и парсить вывод... а потом отдавать в нагиос
> check_command check_nt!MEMUSE!-w 80 -c 90
> переписать чуть чуть комманду check_nt с параметром MEMUSE
> ну или на крайний случай вызывать её, и парсить вывод... а потом
> отдавать в нагиосМожно чуть подробнее или возможен более простой вариант?
Нашел пару плагинов для nrpe.
Например http://exchange.nagios.org/directory/Plugins/Operating-Syste...
Как его интегрировать в Nagios не ясно. В архиве лежат 4 файла exe html pl и txt. Может кто-то имел опыт с интегрированием плагинов в Nagios?
> Как его интегрировать в Nagios не ясно. В архиве лежат 4 файла
> exe html pl и txt. Может кто-то имел опыт с интегрированием
> плагинов в Nagios?Не оно? http://www.ibm.com/developerworks/ru/library/au-nagios/index...
> Не оно? http://www.ibm.com/developerworks/ru/library/au-nagios/index...Не совсем ... это ссылка на установку плагинов к самому Наги, как я понял, а тут этот плагин является частью NRPE.
Жесть, тривиальная операция по мониторингу занятости ОЗУ (без swap'а), а бьюсь уже неделю :)
> Жесть, тривиальная операция по мониторингу занятости ОЗУ (без swap'а), а бьюсь уже
> неделю :)Прошу прощения, если не в кассу. С нагиос как-то не довелось плотно работать, исторически подобные вещи решаются при помощи cacti. Подумалось просто (по аналогии с какти) - а по SNMP не пробовали забирать параметры? У Вас, как я понял - это делается клиентами, установленными на серверах, правильно?
> Прошу прощения, если не в кассу. С нагиос как-то не довелось
> плотно работать, исторически подобные вещи решаются при помощи cacti. Подумалось просто
> (по аналогии с какти) - а по SNMP не пробовали забирать
> параметры? У Вас, как я понял - это делается клиентами, установленными
> на серверах, правильно?Все нормально:) Та ссылка, что Вы дали тоже оказалась полезной, но немного по другой части, так сказать для образования, ведь накатывать плагины на сам Нагиос мне еще предстоит:)
Так вот, Вы правы, на серверах устанавливаются клиенты, с которыми и идет взаимосвязь Nagios. По SNMP не пробовал делать настройку такую, буду рад, если подскажите, с этой вещью никогда не сталкивался вообще :(
>[оверквотинг удален]
>> плотно работать, исторически подобные вещи решаются при помощи cacti. Подумалось просто
>> (по аналогии с какти) - а по SNMP не пробовали забирать
>> параметры? У Вас, как я понял - это делается клиентами, установленными
>> на серверах, правильно?
> Все нормально:) Та ссылка, что Вы дали тоже оказалась полезной, но немного
> по другой части, так сказать для образования, ведь накатывать плагины на
> сам Нагиос мне еще предстоит:)
> Так вот, Вы правы, на серверах устанавливаются клиенты, с которыми и идет
> взаимосвязь Nagios. По SNMP не пробовал делать настройку такую, буду рад,
> если подскажите, с этой вещью никогда не сталкивался вообще :(тут всё на самом деле просто (если smnp поддерживается на ваших серверах)
$ /usr/local/libexec/nagios/check_snmp
check_snmp: Could not parse arguments
Usage:
check_snmp -H <ip_address> -o <OID> [-w warn_range] [-c crit_range]
[-C community] [-s string] [-r regex] [-R regexi] [-t timeout] [-e retries]
[-l label] [-u units] [-p port-number] [-d delimiter] [-D output-delimiter]
[-m miblist] [-P snmp version] [-L seclevel] [-U secname] [-a authproto]
[-A authpasswd] [-x privproto] [-X privpasswd]вот вам пожалуйста параметры.... ищите OID отвечающий за память и собирайте его по snmp, вызывайте вместо check_nt!MEMUSAGE её и вперед на мины)
> вот вам пожалуйста параметры.... ищите OID отвечающий за память и собирайте его
> по snmp, вызывайте вместо check_nt!MEMUSAGE её и вперед на мины)Ну, например, у меня с линуксового сервера параметры забираются по вот таким OID-ам:
Free memory - .1.3.6.1.4.1.2021.4.6.0
Memory buffers - .1.3.6.1.4.1.2021.4.14.0
Memory cache - .1.3.6.1.4.1.2021.4.15.0
>> check_command check_nt!MEMUSE!-w 80 -c 90
>> переписать чуть чуть комманду check_nt с параметром MEMUSE
>> ну или на крайний случай вызывать её, и парсить вывод... а потом
>> отдавать в нагиос
> Можно чуть подробнее или возможен более простой вариант?ну наверное по аналогии:
$cat /usr/local/etc/nagios/objects/commands.cfgэта команда стандартна для проверки ssh на 22 порту
# 'check_ssh' command definition
define command{
command_name check_ssh
command_line $USER1$/check_ssh $ARG1$ $HOSTADDRESS$
}# тут я немного поменял вызов что бы проверять ssh на нестандартном порту (порт передается как параметр)
# 'check_sshn' command definition
define command{
command_name check_sshn
command_line $USER1$/check_ssh -p $ARG1$ $HOSTADDRESS$
}вызывается так (передаем порт как параметр для check_sshn:
$cat /usr/locat/etc/nagios/servers/host.conf
define service{
use local-service
host_name hosting
service_description SSH
check_command check_sshn!16749
notifications_enabled 0
}на самом деле вам нужно чуть изменить комманду (или сослаться на перловый скрипт (который выполнит тоже самое (check_nt!MEMUSAGE), получит данные, распарсит их, обработает и выведет ответ в нужном нагиосу формату.
я вижу это так. ))
> на самом деле вам нужно чуть изменить комманду (или сослаться на перловый
> скрипт (который выполнит тоже самое (check_nt!MEMUSAGE), получит данные, распарсит их,
> обработает и выведет ответ в нужном нагиосу формату.
> я вижу это так. ))Я понимаю логику тут:) Я даже нашел скрипт (выше ссылка), который это делает, но привязать его не выходит:(
>> на самом деле вам нужно чуть изменить комманду (или сослаться на перловый
>> скрипт (который выполнит тоже самое (check_nt!MEMUSAGE), получит данные, распарсит их,
>> обработает и выведет ответ в нужном нагиосу формату.
>> я вижу это так. ))
> Я понимаю логику тут:) Я даже нашел скрипт (выше ссылка), который это
> делает, но привязать его не выходит:(чо тут непонятного?)) из консоли (вот нагиос ругнулся варнингом. т.к. предел задан 500000 для варнинга):
$ /usr/local/libexec/nagios/check_snmp -H 10.100.100.30 -o iso.3.6.1.2.1.43.11.1.1.9.1.1 -w 500000 -c 1000000
SNMP WARNING - *534800* | SNMPv2-SMI::mib-2.43.11.1.1.9.1.1=534800тут без пределов - по этому показывает ОК )
$ /usr/local/libexec/nagios/check_snmp -H 10.100.100.30 -o iso.3.6.1.2.1.43.11.1.1.9.1.1
SNMP OK - 534800 | SNMPv2-SMI::mib-2.43.11.1.1.9.1.1=534800уж прикрутить это к интерфейсу проблем не составит?
> чо тут непонятного?)) из консоли (вот нагиос ругнулся варнингом. т.к. предел задан
> 500000 для варнинга):
> $ /usr/local/libexec/nagios/check_snmp -H 10.100.100.30 -o iso.3.6.1.2.1.43.11.1.1.9.1.1
> -w 500000 -c 1000000
> SNMP WARNING - *534800* | SNMPv2-SMI::mib-2.43.11.1.1.9.1.1=534800
> тут без пределов - по этому показывает ОК )
> $ /usr/local/libexec/nagios/check_snmp -H 10.100.100.30 -o iso.3.6.1.2.1.43.11.1.1.9.1.1
> SNMP OK - 534800 | SNMPv2-SMI::mib-2.43.11.1.1.9.1.1=534800
> уж прикрутить это к интерфейсу проблем не составит?Я не фига не понял. При чем тут SNMP?
Вывод на первую команду:
External command error: Timeout: No Response from 192.168.1.53:161.
Давайте вообще забудем SNMP. Строить еще один велосипед я не хочу. Есть Nagios, есть NRPE плагин, который все прекрасно выполняет, как их соединить?
просьба удалить, ошибочко сообщение создал.
>[оверквотинг удален]
>> SNMP WARNING - *534800* | SNMPv2-SMI::mib-2.43.11.1.1.9.1.1=534800
>> тут без пределов - по этому показывает ОК )
>> $ /usr/local/libexec/nagios/check_snmp -H 10.100.100.30 -o iso.3.6.1.2.1.43.11.1.1.9.1.1
>> SNMP OK - 534800 | SNMPv2-SMI::mib-2.43.11.1.1.9.1.1=534800
>> уж прикрутить это к интерфейсу проблем не составит?
> Я не фига не понял. При чем тут SNMP?
> Вывод на первую команду:
> External command error: Timeout: No Response from 192.168.1.53:161.
> Давайте вообще забудем SNMP. Строить еще один велосипед я не хочу. Есть
> Nagios, есть NRPE плагин, который все прекрасно выполняет, как их соединить?Все объяснили вам. Осталось зайти и сделать за вас.
Предлагаю вам забыть и про SNMP и про ваши проблемы с nagios )
Удачи!
> Все объяснили вам. Осталось зайти и сделать за вас.
> Предлагаю вам забыть и про SNMP и про ваши проблемы с nagios
> )
> Удачи!Спасибо! Примерно такого ответа и ожидал.
> Я не фига не понял. При чем тут SNMP?
> Вывод на первую команду:
> External command error: Timeout: No Response from 192.168.1.53:161.Дык очевидно жеж, в чем причина. :) Или нет?
> Давайте вообще забудем SNMP. Строить еще один велосипед я не хочу. Есть
> Nagios, есть NRPE плагин, который все прекрасно выполняет, как их соединить?Ну - это Ваше право. Я предложил Вам вариант, Вы, как хозяин сервера решаете - подходит он Вам или нет.
Я юзал плагин нрпе и с помошью него снимал параметры с производительности в 2008.
Копай в сторону снятия данных со вкладки производительность. Правда у меня были проблемы с кодировкой. Если столкнешся пиши, помогу.