Мониторинг. · 3 min read · Oct 18, 2025
Установка Nagios на Debian Lenny и мониторинг сервера Debian Lenny - Страница 2
7. Введение локальных служб с server1 на сервер мониторинга
Нам нужно изменить наш конфигурационный файл хоста, который мы создали на шаге 5, чтобы мониторить новые службы, которые мы теперь можем обнаружить с помощью nrpe.
monitor:~# nano /etc/nagios3/conf.d/server1_nagios2.cfgДобавьте это в конец файла:
define service{
use generic-service
host_name server1
service_description Current Load
check_command check_nrpe_1arg!check_load
}
define service{
use generic-service
host_name server1
service_description Current Users
check_command check_nrpe_1arg!check_users
}
define service{
use generic-service
host_name server1
service_description Disk Space
check_command check_nrpe_1arg!check_hda1
}
define service{
use generic-service
host_name server1
service_description Total Processes
check_command check_nrpe_1arg!check_total_procs
}
Перезапустите службу nagios:
monitor:~# /etc/init.d/nagios3 restartВ веб-сервисе вы теперь должны увидеть добавленные службы, и они должны постепенно появляться, кроме одной из них, проверка дискового пространства, скорее всего, не пройдет, так как у вас нет раздела или устройства /dev/hda1.
Измените эту проверку на сервере monitor1, чтобы отразить фактический раздел, который мы хотим проверить. В моем случае машина находится на виртуальном сервере, управляемом xen, мы можем определить используемый раздел, используя следующую команду на server1:
server1:~# df -hFilesystem Size Used Avail Use% Mounted on
/dev/mapper/iscsi1-root
7.3G 714M 6.2G 11% /
tmpfs 137M 0 137M 0% /lib/init/rw
udev 10M 568K 9.5M 6% /dev
tmpfs 137M 0 137M 0% /dev/shm
/dev/xvda1 228M 9.5M 207M 5% /bootЭто покажет нам разделы и точки монтирования, в моем случае фактический ‘root’ раздел - это /dev/mapper/iscsi1-root, и я обнаружил это, посмотрев на точку монтирования ‘/‘.
Теперь мы можем продолжить изменять нашу конфигурацию nrpe на сервере, чтобы эта проверка работала. Для этого мы снова открываем файл nrpe.cfg:
server1:~# nano /etc/nagios/nrpe.cfgЗатем мы переходим к строке, которая содержит (строка 201 по умолчанию):
command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1И изменяем ее на:
command[check_iscsi1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/mapper/iscsi1-rootИзмените конфигурацию хоста на сервере Nagios, чтобы отразить эти изменения:
monitor:~# nano /etc/nagios3/conf.d/server1_nagios2.cfgС:
define service{
use generic-service
host_name server1
service_description Disk Space
check_command check_nrpe_1arg!check_hda1
}На:
define service{
use generic-service
host_name server1
service_description Disk Space
check_command check_nrpe_1arg!check_iscsi1
}Перезапустите обе службы.
server1:~# /etc/init.d/nagios-nrpe-server restart
monitor:~# /etc/init.d/nagios3 restart 8. Настройка уведомлений по электронной почте
Вы хотите получать уведомления по электронной почте, когда служба переходит в критический статус. Поэтому нам нужно настроить адрес электронной почты для пользователя nagiosadmin.
Перейдите в файл /etc/nagios3/conf.d/contacts_nagios2.cfg и измените адрес электронной почты на свой собственный. Если вы хотите добавить больше пользователей, просто скопируйте раздел ‘define contact’, создайте второй с ним и добавьте своих пользователей в группу контактов ниже.
define contact{
contact_name root
alias Root
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email [email protected]
}
define contact{
contact_name example
alias example
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email [email protected]
}
define contactgroup{
contactgroup_name admins
alias Nagios Administrators
members root,example
}Чтобы активировать простое уведомление по электронной почте, нам нужно включить smtp-транспорт системы Debian, потому что все, что делает Nagios, это передает сообщение через Linux pipe стандартной программе /usr/bin/mail.
Нам нужно установить Postfix и настроить базовую конфигурацию, чтобы сервер Nagios мог отправлять электронные письма самостоятельно.
monitor:~# apt-get install postfix mailxТеперь настройте Postfix как “Интернет-сайт” и установите домен, с которого будут приходить письма Nagios.
После этого выполните перезапуск и остановите службу apache на тестовом сервере:
monitor:~# /etc/init.d/nagios3 restart
server1:~# /etc/init.d/apache2 stopЭто создаст уведомление, которое должно быть получено, если вы указали свой адрес электронной почты в файле contacts_nagios2.cfg.
Разное: О Icinga
Icinga - это форк Nagios с более крупным сообществом разработчиков и, вероятно, будет программным обеспечением, которое будет использоваться в будущем, вы найдете инструкции по Icinga на HowtoForge, и вы можете повторно использовать свои пользовательские плагины с Icinga, так как плагины Nagios также могут быть использованы.
Я рекомендую всем поиграть с Nagios и Icinga.
Get new posts in your inbox
No spam. Unsubscribe anytime.