Кто не знаком с предметом читаем тут и тут.
Если кратко:
Nagios — система мониторинга;
check-mk — один из плагинов для неё, отличается возможностью автоматически и с минимальными нагрузками собирать информацию о сервисах.
Установка и начальная настройка на примере Ubuntu.
1. Если у Вас Ubuntu 11.10 то все уже есть в репозитории, устанавливаем:
2. Если нет, добавляем репозиторий oneric:
добавляем в конец строку, сохраняем, закрываем
обновляем список пакетов
устанавливаем
3. Либо качаем и устанавливаем:
Проверяем установку:
команда выдает много информации о системе.
Проверяем сервер:
Если порт не открыт, проверяем настройки службы:
обратите внимание на строку
Перезапускаем xinetd:
1. Если у Вас Ubuntu 11.10, устанавливаем:
2. Если нет, добавляем репозиторий oneric (см. выше), устанавливаем:
3. Где скачать на сайте отдельный пакет для сервера я так и не нашел.
Проверяем установку:
команда должна вывести справку.
Создаем указатель на шаблоны для сервисов и команд:
Добавляем сервера (добавлять лучше имя, а не IP, так как именно в таком виде будет показано название сервера на сайте):
между скобок указываем имена серверов которые будем мониторить (и на которые предварительно установлен клиент)
Запускаем поиск сервисов:
система выведет список обнаруженных на клиентах сервисов
Компилируем команды:
Формируем конфигурацию для nagios:
Обратите внимание какие права у файлов check_mk_objects.cfg и check_mk_templates.cfg чтобы nagios смог с ними работать, кроме того не забываем закоментировать определения хостов в nagios если они у вас уже мониторились.
Включаем пассивные проверки:
меняем значения следующих параметров
Обновляем параметры nagios:
Проверяем, идут ли проверки:
Если все в порядке, отключаем логирование пассивных проверок (зачем их записывать, если все в порядке?):
меняем параметр
Обновляем параметры nagios:
В итоге в списке сервисов на сайте у вас должно получится нечто такое:

Если проверки отрабатывают, а хост отмечен тревогой (нет пинга), то в check_mk_templates.cfg находим описание команды
и добавляем в последнюю строку sudo (вы ведь добавили пользователя nagios в sudoers?)
получается так:
Надеюсь все успешно, удачи.
Nagios Is The Industry Standard In IT Infrastructure Monitoring.
Check_MK — Nagios-plugin for retrieving data.
Если кратко:
Nagios — система мониторинга;
check-mk — один из плагинов для неё, отличается возможностью автоматически и с минимальными нагрузками собирать информацию о сервисах.
Установка и начальная настройка на примере Ubuntu.
Установка клиента
1. Если у Вас Ubuntu 11.10 то все уже есть в репозитории, устанавливаем:
# apt-get install xinetd check-mk-agent
2. Если нет, добавляем репозиторий oneric:
# nano /etc/apt/sources.list
добавляем в конец строку, сохраняем, закрываем
deb http://ru.archive.ubuntu.com/ubuntu/ oneiric universe
обновляем список пакетов
# apt-get update
устанавливаем
# apt-get install xinetd check-mk-agent
3. Либо качаем и устанавливаем:
# wget http://mathias-kettner.de/download/check-mk-agent_1.1.12p7-2_all.deb
# dpkg -i check-mk-agent_1.1.12p7-2_all.deb
Проверяем установку:
# check_mk_agent
команда выдает много информации о системе.
Проверяем сервер:
# netstat -ln | grep 6556
tcp 0 0 0.0.0.0:6556 0.0.0.0:* LISTEN
Если порт не открыт, проверяем настройки службы:
# nano /etc/xinetd.d/check_mk
обратите внимание на строку
disable = no
Перезапускаем xinetd:
# service xinetd restart
Установка сервера
1. Если у Вас Ubuntu 11.10, устанавливаем:
# apt-get install check-mk-server check-mk-config-nagios3
2. Если нет, добавляем репозиторий oneric (см. выше), устанавливаем:
# apt-get install check-mk-server check-mk-config-nagios3
3. Где скачать на сайте отдельный пакет для сервера я так и не нашел.
Проверяем установку:
# check_mk
команда должна вывести справку.
Создаем указатель на шаблоны для сервисов и команд:
# ln -s /etc/icinga/objects/check_mk_templates.cfg /etc/nagios3/conf.d/
Добавляем сервера (добавлять лучше имя, а не IP, так как именно в таком виде будет показано название сервера на сайте):
# nano /etc/check_mk/main.mk
между скобок указываем имена серверов которые будем мониторить (и на которые предварительно установлен клиент)
# Put your host names here
# all_hosts = [ 'localhost' ]
all_hosts = [
"server1",
"server2",
"server3"
]
Запускаем поиск сервисов:
# check_mk -u -II
система выведет список обнаруженных на клиентах сервисов
cpu.loads 1 new checks
cpu.threads 1 new checks
df 1 new checks
diskstat 2 new checks
kernel 3 new checks
kernel.util 1 new checks
logwatch 2 new checks
mem.used 1 new checks
mem.vmalloc 1 new checks
mounts 1 new checks
netctr.combined 3 new checks
ntp.time 1 new checks
tcp_conn_stats 1 new checks
uptime 1 new checks
Компилируем команды:
# check_mk -C
Формируем конфигурацию для nagios:
# check_mk -N > /etc/nagios3/conf.d/check_mk_objects.cfg
Обратите внимание какие права у файлов check_mk_objects.cfg и check_mk_templates.cfg чтобы nagios смог с ними работать, кроме того не забываем закоментировать определения хостов в nagios если они у вас уже мониторились.
Включаем пассивные проверки:
# nano /etc/nagios3/nagios.cfg
меняем значения следующих параметров
check_external_commands=1
command_check_interval=1
Обновляем параметры nagios:
# service nagios3 reload
Проверяем, идут ли проверки:
# tail -f /var/log/nagios3/nagios.log
Если все в порядке, отключаем логирование пассивных проверок (зачем их записывать, если все в порядке?):
# nano /etc/nagios3/nagios.cfg
меняем параметр
log_passive_checks=0
Обновляем параметры nagios:
# service nagios3 reload
В итоге в списке сервисов на сайте у вас должно получится нечто такое:

Если проверки отрабатывают, а хост отмечен тревогой (нет пинга), то в check_mk_templates.cfg находим описание команды
define command {
command_name check-mk-ping
command_line /usr/lib/nagios/plugins/check_icmp $HOSTADDRESS$
и добавляем в последнюю строку sudo (вы ведь добавили пользователя nagios в sudoers?)
получается так:
define command {
command_name check-mk-ping
command_line sudo /usr/lib/nagios/plugins/check_icmp $HOSTADDRESS$
Надеюсь все успешно, удачи.
Nagios Is The Industry Standard In IT Infrastructure Monitoring.
Check_MK — Nagios-plugin for retrieving data.