hostprofi.ru
Подобрать хостинг
Термин·буква N

Nagios

краткое определение

Nagios — одна из первых систем мониторинга IT-инфраструктуры с открытым исходным кодом. Проверяет доступность сервисов (ping, HTTP, TCP), состояние серверов через агенты NRPE и отправляет алерты при обнаружении проблем.

Nagios — система мониторинга IT-инфраструктуры, контролирующая доступность хостов и сервисов и уведомляющая администраторов при обнаружении проблем. Один из старейших open-source инструментов мониторинга: ядро Nagios Core появилось в 1999 году. До 2010-х годов был де-факто стандартом мониторинга в Linux-окружениях.

Как работает Nagios

Nagios опрашивает объекты мониторинга через плагины. Плагин — исполняемый файл, возвращающий один из кодов: 0 (OK), 1 (WARNING), 2 (CRITICAL), 3 (UNKNOWN). Плагин проверяет что угодно: ping-доступность, HTTP 200, свободное место на диске, активность процесса.

Для мониторинга ресурсов на удалённом хосте используется NRPE (Nagios Remote Plugin Executor) — агент, устанавливаемый на целевой сервер и выполняющий плагины локально. Nagios Server запрашивает NRPE Agent по TCP/5666, получает результат и обновляет статус.

Конфигурация через текстовые файлы .cfg:

define service {
    host_name           webserver01
    service_description HTTP
    check_command       check_http!-H webserver01
    normal_check_interval 5
    notification_options w,c,r
}

История

Nagios создал Этан Галстад (Ethan Galstad) в 1999 году под именем NetSaint. Переименован в Nagios в 2002 году после регистрации товарного знака. В 2009 году команда разработчиков сделала форк Icinga из-за разногласий с автором по открытости кода. В 2012 году появился Naemon — ещё один форк с фокусом на производительности. Nagios начал терять долю рынка в пользу Prometheus и Zabbix, не имея нативной поддержки контейнеров и облаков.

Nagios vs Prometheus vs Zabbix

ПараметрNagios CorePrometheusZabbix
Модель сбораActive checks + NRPEPull (scraping)Active/Passive агенты
Хранение метрикRRDtool (ограниченно)TSDB (на диске)PostgreSQL/MySQL
Kubernetes-интеграцияСлабаяНативнаяЧерез плагины
SNMP-мониторингОтличныйЧерез snmp_exporterВстроенный

Применение на серверах

Nagios актуален для мониторинга классической инфраструктуры с большим числом сетевых устройств SNMP: маршрутизаторы Cisco, коммутаторы, ИБП. Для этого сценария экосистема Nagios с тысячами готовых плагинов не имеет аналогов по охвату. Nagios XI (коммерческая версия) добавляет удобный веб-интерфейс настройки, отчёты и пропускную способность до 100 000+ проверок в секунду.

Для новых серверных проектов на VPS и выделенных серверах в 2024 году рекомендуется Prometheus + Grafana (современный стек для облаков) или Zabbix (enterprise, широко применяется в госструктурах РФ). Nagios остаётся хорошим выбором для legacy-инфраструктуры, где уже настроены сотни NRPE-проверок.

Установка и настройка

Nagios Core устанавливается из исходников или пакетного менеджера. Файлы конфигурации: /etc/nagios/. Плагины: /usr/lib/nagios/plugins/. Веб-интерфейс доступен по /nagios через Apache с Basic-аутентификацией. Для отправки алертов настраивается contacts.cfg с email-адресами дежурных. Интеграция с PagerDuty добавляется через notification command, отправляющий HTTP-запрос в Events API.

Ключевые плагины Nagios

Стандартные плагины из пакета nagios-plugins (Nagios Plugins 2.x):

  • check_http — проверка HTTP/HTTPS, статус-код, содержимое страницы, время ответа
  • check_disk — заполненность дисков; стандартные пороги 80%/90%
  • check_load — средняя нагрузка CPU (LA1/LA5/LA15)
  • check_procs — количество процессов по имени или команде
  • check_tcp и check_udp — доступность порта
  • check_ping — доступность хоста и round-trip latency
  • check_ssl_cert — срок действия SSL-сертификата; алерт за 30 дней до истечения

Для мониторинга VPS-серверов проверки NRPE настраиваются в /etc/nrpe.cfg на целевом хосте, затем добавляются в конфиг Nagios Server. При переходе с Nagios на Prometheus — используйте blackbox_exporter как замену check_http и check_tcp.

Другие термины