Поиск по сайту:

Как установить Nagios на CentOS 6


Статус: устарело

В этой статье рассматривается версия CentOS, которая больше не поддерживается. Если вы в настоящее время используете сервер под управлением CentOS 6, мы настоятельно рекомендуем обновить или перейти на поддерживаемую версию CentOS.

Причина:

См. вместо этого:

Следующий учебник DigitalOcean может представлять непосредственный интерес, поскольку в нем описывается установка Nagios на сервере CentOS 7:

  • Как установить Nagios 4 и контролировать свои серверы в CentOS 7

Шаг 1. Установите пакеты на сервер мониторинга

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum -y install nagios nagios-plugins-all nagios-plugins-nrpe nrpe php httpd
chkconfig httpd on && chkconfig nagios on
service httpd start && service nagios start

Мы также должны включить подкачку памяти на этом дроплете, по крайней мере, 2 ГБ:

dd if=/dev/zero of=/swap bs=1024 count=2097152
mkswap /swap && chown root. /swap && chmod 0600 /swap && swapon /swap
echo /swap swap swap defaults 0 0 >> /etc/fstab
echo vm.swappiness = 0 >> /etc/sysctl.conf && sysctl -p

Шаг 2 - Установите защиту паролем

Установите пароль панели администратора Nagios:

htpasswd -c /etc/nagios/passwd nagiosadmin

Обязательно сохраните это имя пользователя как \nagiosadmin\ - в противном случае вам придется изменить /etc/nagios/cgi.cfg и переопределить авторизованного администратора.

Теперь вы можете перейти на IP-адрес вашего дроплета http://IP/nagios и войти в систему.

Вам будет предложено ввести пароль, который вы установили на шаге 2:

Вот так выглядит административная панель Nagios:

Поскольку это новая установка, в настоящее время у нас нет отслеживаемых хостов.

Теперь мы должны добавить наши хосты, которые будут контролироваться Nagios. Например, мы будем использовать cloudmail.tk (198.211.107.218) и emailocean.tk (198.211.112.99).

Из общедоступных портов мы можем отслеживать пинг, любые открытые порты, такие как веб-сервер, сервер электронной почты и т. д.

Для внутренних служб, которые прослушивают локальный хост, таких как MySQL, memcached, системные службы, нам нужно будет использовать NRPE.

Шаг 4. Установите NRPE на клиентах

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum -y install nagios nagios-plugins-all nrpe
chkconfig nrpe on

На следующем шаге вы можете указать любые ручные команды, которые сервер мониторинга может отправлять через NRPE на эти клиентские хосты.

Обязательно измените allowed_hosts на свои собственные значения.

Отредактируйте /etc/nagios/nrpe.cfg

log_facility=daemon
pid_file=/var/run/nrpe/nrpe.pid
server_port=5666
nrpe_user=nrpe
nrpe_group=nrpe
allowed_hosts=198.211.117.251
dont_blame_nrpe=1
debug=0
command_timeout=60
connection_timeout=300
include_dir=/etc/nrpe.d/
command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_disk]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/vda
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
command[check_procs]=/usr/lib64/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$

Примечание:

В приведенном выше check_disk проверяемым разделом является /dev/vda. Убедитесь, что ваш дроплет имеет тот же раздел, запустив df -h /

Мы также должны настроить правила брандмауэра, чтобы разрешить подключения с нашего сервера мониторинга к этим клиентам и отключить всех остальных:

iptables -N NRPE
iptables -I INPUT -s 0/0 -p tcp --dport 5666 -j NRPE
iptables -I NRPE -s 198.211.117.251 -j ACCEPT
iptables -A NRPE -s 0/0 -j DROP
/etc/init.d/iptables save

Теперь вы можете запустить NRPE на всех ваших клиентских хостах:

service nrpe start

Шаг 5. Добавьте конфигурации сервера на сервер мониторинга

Вернувшись на наш сервер мониторинга, нам нужно будет создать файлы конфигурации для каждого из наших клиентских серверов:

echo "cfg_dir=/etc/nagios/servers" >> /etc/nagios/nagios.cfg
cd /etc/nagios/servers
touch cloudmail.tk.cfg
touch emailocean.tk.cfg

Отредактируйте файл конфигурации каждого клиента и определите, какие службы вы хотите отслеживать.

nano /etc/nagios/servers/cloudmail.tk.cfg

Добавьте следующие строки:

define host {
        use                     linux-server
        host_name               cloudmail.tk
        alias                   cloudmail.tk
        address                 198.211.107.218
        }

define service {
        use                             generic-service
        host_name                       cloudmail.tk
        service_description             PING
        check_command                   check_ping!100.0,20%!500.0,60%
        }

define service {
        use                             generic-service
        host_name                       cloudmail.tk
        service_description             SSH
        check_command                   check_ssh
        notifications_enabled           0
        }

define service {
        use                             generic-service
        host_name                       cloudmail.tk
        service_description             Current Load
        check_command                   check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
        }

При желании вы можете добавить дополнительные службы для мониторинга. Такая же конфигурация должна быть добавлена для второго клиента, emailocean.tk, с другим IP-адресом и host_name:

Это фрагмент файла /etc/nagios/servers/emailocean.tk.cfg:

define host {
        use                     linux-server
        host_name               emailocean.tk
        alias                   emailocean.tk
        address                 198.211.112.99
        }

...

Вы можете добавить дополнительных клиентов для мониторинга как /etc/nagios/servers/AnotherHostName.cfg

Наконец, после того, как вы закончите добавлять все конфигурации клиента, вы должны правильно установить права доступа к папке и перезапустить Nagios на вашем сервере мониторинга:

chown -R nagios. /etc/nagios
service nagios restart

Шаг 6. Мониторинг хостов в Nagios

Перейдите к IP-адресу вашего сервера мониторинга http://IP/nagios и введите пароль, установленный на шаге 2.

Теперь вы должны увидеть все хосты и сервисы:

И все готово!