Исинга

Программное обеспечение для мониторинга
Исинга
Первоначальный выпускМай 2009 г. (2009-05)
Стабильный релиз
2.14.2 (Icinga 2) / 18 января 2024 г. ; 9 месяцев назад [1] (2024-01-18)
Репозиторий
  • github.com/Icinga/icinga2
Написано вС++ , PHP
Операционная системаКроссплатформенность (только для Linux)
ТипМониторинг сети
ЛицензияGPLv2
Веб-сайтicinga.com
Принцип работы Nagios

Icinga — это компьютерная система и приложение для мониторинга сети с открытым исходным кодом . Оно было создано как ответвление приложения для мониторинга системы Nagios в 2009 году. [2] [3]

Icinga пытается улучшить процесс разработки Nagios [4] , а также добавить новые функции [5] [6], такие как современный пользовательский интерфейс в стиле Web 2.0 , дополнительные коннекторы баз данных (для MySQL , Oracle и PostgreSQL ) и REST API, который позволяет администраторам интегрировать многочисленные расширения без сложной модификации ядра Icinga.

Первая стабильная версия 1.0 была выпущена в декабре 2009 года, а новые версии выпускались каждые пару месяцев, начиная с января 2010 года. [7]

В 2012 году началась разработка нового основного компонента, который был выпущен в 2014 году под названием Icinga 2 [8], что позволило внести существенные архитектурные изменения по сравнению с ядром Nagios .

История

В мае 2009 года группа разработчиков из сообщества Nagios анонсировала форк Icinga, ссылаясь на свое недовольство застойной разработкой программного обеспечения Nagios в то время и желание открыть его разработку для более широкой базы. [4] Название Icinga — это зулусское слово, означающее «он ищет», «он просматривает» или «он изучает» [9] и произносится с щелкающей согласной . [10]

В первый год разработчики Icinga выпустили отдельные версии Core, API и Web и отпраздновали 10 000-ю загрузку. [11]

На втором году своего существования проект Icinga выпустил унифицированные и стабильные Core и Web; добавил поддержку двухстекового IPv6 и IPv4 , оптимизировал подключение к базе данных и обновил пользовательский интерфейс Icinga Web, интегрировав различные дополнения сообщества (PNP4Nagios, LConf, Heatmap и Business Process Addon). Проект достиг более 70 000 загрузок и вырос до 23 членов команды. [11]

На второй год существования Icinga отпраздновала 100 000-ю загрузку, интегрировала компонент API Icinga в Icinga Web, улучшила отчетность SLA и расширила виртуальные устройства Icinga до операционных систем Debian , OpenSUSE и CentOS . [12]

В октябре 2012 года проект Icinga выпустил технологическую предварительную версию Icinga 2. Это была замена основного фреймворка и ветвь параллельной разработки. Разработчики заявили, что хотят переписать ядро, чтобы исправить проблемы. К ним относятся сложная настройка и ограничения масштабируемости в больших развертываниях. Они планируют переписать ядро ​​Icinga 2 на C++ и разработать новую архитектуру загрузчика компонентов. Они также планируют изменить способ выполнения проверок мониторинга. [13]

В июне 2014 года проект Icinga выпустил первую стабильную версию Icinga 2. [14] Новые функции, такие как агент или функция API, запланированы на последующие выпуски.

Функции

Благодаря своей природе как форка, Icinga предлагает функции Nagios с некоторыми дополнениями, такими как дополнительный модуль отчетности с улучшенной точностью SLA , дополнительные коннекторы баз данных для PostgreSQL и Oracle , а также распределенные системы для избыточного мониторинга. Icinga также поддерживает совместимость конфигурации и подключаемых модулей с Nagios, [11] облегчая миграцию между двумя программами мониторинга.

Мониторинг

  • Мониторинг сетевых служб ( SMTP , POP3 , HTTP , NNTP , ping и т. д.)
  • Мониторинг ресурсов хоста (загрузка ЦП, использование диска и т. д.)
  • Мониторинг компонентов сервера ( коммутаторы , маршрутизаторы , датчики температуры и влажности и т.д.)
  • Простая конструкция плагина, позволяющая пользователям легко разрабатывать собственные проверки обслуживания
  • Параллельные проверки обслуживания
  • Возможность определения иерархии сетевых хостов с использованием «родительских» хостов, что позволяет обнаруживать и различать неработающие и недоступные хосты.
  • Возможность определения обработчиков событий, которые будут запускаться во время обслуживания или хост-событий для упреждающего решения проблем

Уведомление

  • Уведомление контактных лиц о возникновении проблем с обслуживанием или хостом и их устранении (по электронной почте, пейджеру, мгновенным сообщением [15] или определяемым пользователем способом)
  • Передача оповещений другим пользователям или каналам связи

Визуализация и отчетность

  • Два дополнительных пользовательских интерфейса (Icinga Classic UI и Icinga Web) для визуализации состояния хоста и сервиса, сетевых карт, отчетов, журналов и т. д.
  • Модуль отчетов Icinga на основе отчетов Jasper с открытым исходным кодом для пользовательских интерфейсов Icinga Classic и Icinga Web
  • Отчеты на основе шаблонов (например, 10 основных проблемных хостов или служб, краткий обзор полной среды мониторинга, отчеты о доступности и т. д.)
  • Репозиторий отчетов с различными уровнями доступа и автоматизированной генерацией и распространением отчетов
  • Дополнительное расширение для отчетов SLA , которое различает критические события от запланированных и незапланированных простоев и периодов подтверждения [16]
  • Отчетность об использовании мощностей
  • Построение графиков производительности с помощью таких дополнений, как PNP4Nagios, NagiosGrapher и InGraph

Архитектура

Модульная архитектура Icinga с ядром, базой данных Icinga Data Out, Web начиная с версии 1.5

Icinga Core написан на языке C [17] и имеет модульную архитектуру с автономным ядром, пользовательским интерфейсом и базой данных, в которую пользователи могут интегрировать различные надстройки и плагины.

Последний взаимодействует через уровень абстракции Icinga Doctrine , REST и подключаемые API , которые являются посредниками между внешними данными и внутренними структурами. Такое объединение компонентов позволяет пользователям распространять систему Icinga для избыточного мониторинга. Оно также предоставляет пользователям свободу настраивать Icinga в соответствии со своими потребностями. [18]

Ядро Icinga

Ядро Icinga управляет задачами мониторинга, получая результаты проверки от различных подключаемых модулей. Затем оно передает эти результаты в IDODB (база данных Icinga Data Out) через интерфейс IDOMOD (модуль вывода данных Icinga) и демон службы IDO2DB (вывод данных Icinga в базу данных) через зашифрованные SSL TCP-сокеты. Хотя оба они поставляются в пакете (также известны как IDOUtils) с ядром, они являются отдельными компонентами, которые можно разделить для распределения данных и процессов по нескольким серверам для распределенного мониторинга системы.

Пользовательский интерфейс Icinga Classic также поставляется в комплекте с Icinga Core и может использоваться в качестве замены веб-интерфейсу Icinga на основе PHP .

Исинга 2

Icinga 2 управляет задачами мониторинга, запускает проверки и отправляет оповещения. Функции Icinga 2 могут быть включены по требованию, будь то функции по умолчанию, такие как компонент «проверка» или «уведомление», или внешние интерфейсы, совместимые с Icinga 1.x и ее пользовательскими интерфейсами, например, IDO DB (база данных Icinga Data Out). Icinga 2 поставляет встроенный кластерный стек, защищенный сертификатами SSL x509, что упрощает настройку распределенного мониторинга.

Синтаксис конфигурации отличается для Icinga Core 1.x и Nagios и требует миграции при обновлении.

Пользовательский интерфейс Icinga

Icinga предлагает пользователям веб-интерфейс для просмотра результатов мониторинга и отправки команд в ядро ​​Icinga, называемое Icinga Web (также называемое New Web), — это проективный и основанный на PHP , вдохновленный Web 2.0 фронтенд , который использует Cronks ( виджеты ) для предложения настраиваемых панелей управления с функцией drag-n-drop. Icinga Web — это автономная часть программного обеспечения. Он взаимодействует с ядром, базой данных и сторонними надстройками через уровни thrinput/dmponent: абстракция Doctrine , уровень (вход/база данных), REST API (внешние скрипты) и интерфейс управления командами (запись в канал, выполнение команд).

Интерфейс отображает информацию о состоянии хоста и службы, историю, уведомления и карты состояния, показывающие состояние сети в режиме реального времени, а также поддерживает адреса IPv4 и IPv6 .

База данных Icinga Data Out

База данных Icinga Data Out (IDODB) — это точка хранения исторических данных мониторинга для доступа к надстройкам или веб-интерфейсу Icinga. В отличие от своего предшественника Nagios, Icinga поддерживает базы данных PostgreSQL и Oracle в дополнение к MySQL .

Отчетность Icinga

Проект Icinga предлагает дополнительный модуль Icinga Reporting на основе открытого исходного кода Jasper Reports . Он может быть интегрирован как в Icinga Classic, так и в Icinga Web-интерфейсы пользователя. Модуль предоставляет отчеты на основе шаблонов (например, 10 самых проблемных хостов или служб, обзор полной среды мониторинга, отчеты о доступности и т. д.), которые можно сохранять в репозитории с различными уровнями доступа и автоматизированной генерацией и распространением отчетов. Отчеты также можно просматривать в обоих дополнительных пользовательских интерфейсах Icinga.

Мобильный телефон Icinga

Icinga Mobile — это пользовательский интерфейс для смартфонов и планшетных браузеров, работающих на WebKit . Обычно они доступны на iOS , Android , BlackBerry Tablet OS и webOS . Основанный на JavaScript и Sencha Touch , Icinga Mobile загружается на сервер для доступа авторизованных пользователей через их мобильные устройства. Таким образом, администрирование и обновления могут осуществляться централизованно, чтобы автоматически применяться ко всем пользователям компьютерной сети. [19]

Расширенная функциональность

Скриншот Icinga Web 1.8 с интегрированным дополнением Business Process View

Некоторые из самых популярных дополнений, расширяющих функциональность Icinga, включают в себя:

  • Построение графиков производительности (например, PNP4Nagios, NagiosGrapher, InGraph)
  • Интерфейсы и инструменты настройки (например, Nconf (инструмент для настройки Nagios), NagiosQL, LConf)
  • Мониторинг бизнес-процессов (например, надстройки бизнес-процессов)
  • Визуализация сети (например, NagVis, Nagmap)
  • Мониторинг Windows (например, NSClient++, Cygwin )
  • Мониторинг ловушек SNMP (например, SNMPTT , NagTrap)

Icinga была развернута в распределенных и отказоустойчивых конфигурациях. [20] Программное обеспечение имеет модульную архитектуру с автономным ядром, веб-сайтом и IDODB (база данных Icinga Data Out), что обеспечивает распределенный мониторинг и мониторинг распределенных систем.

Nagios Remote Plugin Executor ( NRPE ) — это совместимый с Icinga агент, который позволяет осуществлять мониторинг удаленных систем с помощью скриптов, размещенных на удаленных системах. Он позволяет осуществлять мониторинг ресурсов, таких как использование диска, загрузка системы или количество пользователей, вошедших в систему в данный момент. Icinga периодически опрашивает агента на удаленной системе с помощью подключаемого модуля check_nrpe. В установках с использованием дополнительного пользовательского интерфейса Icinga Web данные мониторинга из нескольких экземпляров Icinga Core могут отображаться, если каждый экземпляр записывает данные в одну и ту же IDODB. Различные компоненты Icinga могут быть разделены и разбросаны в распределенной установке.

Доступ пользователей, уведомления и представления можно настраивать.

Смотрите также

Ссылки

  1. ^ "Releases" . Получено 25 марта 2024 г. – через GitHub .
  2. ^ Gewirtz, David (2019-04-11). "Что в имени? Эти инструменты DevOps имеют странную предысторию 6 - Страница 6". ZDNet . Архивировано из оригинала 2019-07-11 . Получено 2019-07-11 .
  3. Асэй, Мэтт (6 мая 2009 г.). «Открытый исходный код работает так, как и заявлено: ICINGA разветвляет Nagios». CNET .
  4. ^ ab "Почему форк? - Icinga: Open Source Monitoring". Icinga. Архивировано из оригинала 2012-03-08 . Получено 2013-03-12 .
  5. ^ Khamlichi, M.el. "ICINGA – An Advanced Opensource Monitoring Tool". Учебное пособие . Unixmen. Архивировано из оригинала 2012-08-10 . Получено 2012-11-04 .
  6. ^ «Мониторинг открытого исходного кода: Icinga против Nagios Sos с открытым исходным кодом» . Sosopensource.com. 25 ноября 2010 г. Проверено 12 марта 2013 г.
  7. ^ Бентин, Фалько (2010). «Мониторинг сетевых компьютеров с помощью форка Icinga Nagios». Администрирование Сети и Безопасность (1).
  8. ^ Icinga/icinga2, Icinga, 9 октября 2024 г. , получено 12 октября 2024 г.
  9. ^ "– Зулу-английский онлайн-словарь". Izizulu.net . Получено 2013-03-12 .
  10. ^ «Урок зулу: «Icinga» - «Eee-Chingaa», «Aye-Singa», 'c', 'see', 'g', 'ng - Icinga: Мониторинг открытого исходного кода». Исинга. 03.11.2010. Архивировано из оригинала 10 ноября 2010 г. Проверено 12 марта 2013 г.
  11. ^ abc Mobily, Tony (27 апреля 2012 г.). «Nagios против Icinga: реальная история одного из самых жарких форков в свободном программном обеспечении». Free Software Magazine . Архивировано из оригинала 15 сентября 2017 г. Получено 3 ноября 2012 г.
  12. ^ "3 года и 100 000 загрузок! - Icinga, Classic, Doctrine - Icinga: Open Source Monitoring". Icinga. 2012-05-06. Архивировано из оригинала 2012-05-17 . Получено 2013-03-12 .
  13. ^ "Icinga 2 v.0.0.1 released! - Что, черт возьми, такое Icinga 2, загрузите Icinga 2, первую технологическую предварительную версию v001 с Sourceforge прямо сейчас, как насчет Icinga 1x, тестирования, развития Roa". Icinga.org. 2012-10-25. Архивировано из оригинала 2014-07-24 . Получено 2013-03-12 .
  14. ^ "Icinga 2.0 уже доступна". Icinga.org. 2014-06-16. Архивировано из оригинала 2014-07-01 . Получено 2014-09-03 .
  15. ^ "Citunius Notifier® для Icinga - Citunius GmbH". www.citunius.de . Получено 25.11.2017 .
  16. ^ Хеннинг, Эдвард (6 декабря 2011 г.). "Nagios fork Icinga 1.6 записывает информацию SLA". The H Open .
  17. ^ "Введение - Icinga 2 - Icinga Wiki". Wiki.icinga.org. 2012-10-18. Архивировано из оригинала 2013-09-27 . Получено 2013-03-12 .
  18. ^ "Features - Icinga: Open Source Monitoring". Icinga. Архивировано из оригинала 2013-09-27 . Получено 2013-09-29 .
  19. ^ "Mobile - Icinga: Open Source Monitoring". Icinga. Архивировано из оригинала 2013-01-27 . Получено 2013-03-12 .
  20. ^ "Users - Icinga: Open Source Monitoring". Icinga. Архивировано из оригинала 2013-03-02 . Получено 2013-03-12 .
  • Официальный сайт
Retrieved from "https://en.wikipedia.org/w/index.php?title=Icinga&oldid=1250845030"