Применение системы Nagios в задачах мониторинга информационных систем реального времени
Конференция: XIX Международная научно-практическая конференция «Научный форум: технические и физико-математические науки»
Секция: Информатика, вычислительная техника и управление
XIX Международная научно-практическая конференция «Научный форум: технические и физико-математические науки»
Применение системы Nagios в задачах мониторинга информационных систем реального времени
Adaptation Nagios monitoring system for monitoring real-time computing systems
Andrey Lavrov
Ph.D. in Information Technology, assistant, Saint-Petersburg Electrotechnical University ETU "LETI", Russia, Saint-Petersburg
Аннотация. В работе рассматриваются актуальные вопросы мониторинга информационных систем реального времени; особенности мониторинга и диагностики подобных систем; факторы, препятствующие успешному использованию классических систем мониторинга в задачах эксплуатации современных систем реального времени. Предлагается и обосновывается архитектура системы сетевого мониторинга, основанная на базе системы Nagios, удовлетворяющая современным требованиям к задачам мониторинга систем реального времени.
Abstract. This paper presents actual problems of monitoring real-time information systems, features of monitoring and diagnostic such systems, problems with application of typical network monitoring systems for monitoring modern real-time computing systems. Author presents architecture of network monitoring system for monitoring real-time computing systems based on Nagios open-source software for network monitoring, describes modifications in architecture in compare with typical Nagios architecture needed for realizing efficient monitoring of real-time computing systems.
Ключевые слова: сетевой мониторинг; системы мониторинга; Nagios; системы реального времени.
Keywords: network monitoring; monitoring systems; Nagios; real-time computing systems.
Постоянный контроль за работой вычислительной сети, составляющей основу любого современного цифрового вычислительного комплекса или другой распределенной системы, необходим для поддержания системы в работоспособном состоянии и оперативного устранения сбоев и неполадок. Под мониторингом вычислительной сети понимают функции постоянного наблюдения в пределах сети с целью поиска медленных или неисправных систем, а также оповещение сетевых администраторов о сбоях и иных неисправностях с использованием различных средств оповещения [4].
К современным информационным системам предъявляются всё более жесткие требования по отказоустойчивости и надежности, что требует разработки соответствующих средств их мониторинга и диагностики. Современные системы реального времени, системы критической инфраструктуры требуют моментального реагирования на возникающие в их функционировании инциденты. Классические системы мониторинга, основанные на регулярном опросе объектов мониторинга, уже не удовлетворяют возросшим требованиям [2]. Таким образом, актуальна задача разработки новых систем мониторинга или модификации уже существующих систем сетевого мониторинга (ССМ) с целью обеспечения их эффективного функционирования по решению задач обслуживания современных информационных комплексов с учетом актуальных требований по времени реагирования, отказоустойчивости и надежности.
В настоящее время широкое распространение среди ССМ получила система Nagios, разработанная на базе открытого исходного кода с использованием принципов модульной архитектуры и предоставляющая широкие возможности по мониторингу состояния сетевых узлов [1]. Вместе с тем, Nagios обладает рядом недостатков, препятствующих её успешному применению в задачах мониторинга систем реального времени, а именно:
· система не отказоустойчива, масштабирование возможно посредством переносом части проверок на отдельные сервера;
· наличие слишком большого интервала между проверками и замерами отслеживаемых параметров;
· обработка и хранение данных предполагают усреднение показателей, что делает невозможным получить точные значения параметров объектов мониторинга в заданный момент времени в прошлом.
В работе предлагается архитектура ССМ, построенная на основе системы Nagios и лишенная перечисленных недостатков.
Схема архитектуры ССМ представлена на рис. 1.
ССМ состоит из следующих основных модулей:
1. Шасси мониторинга (ШМ) – внутренний базовый модуль ССМ, который предоставляет интерфейсы для подключения агентов, обеспечивает загрузку и управление конфигурацией системы, управляет модулями оповещения и журналирования и остальными компонентами ССМ. Построен на базе шасси Nagios.
2. Агенты опрашивают удаленные датчики или узлы напрямую (например, по протоколу ICMP для определения доступности узла) и передают полученную информацию ШМ.
Рисунок 1. Архитектура системы мониторинга
3. Журналы хранят числовую и текстовую информацию о событиях, происходящих на объектах мониторинга; информация поступает в файлы журналов непосредственно от ШМ.
4. Модуль визуализации (МВ) отвечает за графическое представление информации о состоянии определенного параметра мониторинга за определенный период времени.
5. Модуль состояния комплекса (МСК) хранит текущее состояние всех отслеживаемых параметров узлов – объектов мониторинга и обеспечивает взаимодействие с виджетом визуализации (ВВ). МСК регулярно передает виджету визуализации информацию о состоянии объектов мониторинга. При возникновении нештатной ситуации МСК уведомляет ВВ о событии.
6. Датчики (Д) устанавливаются на узлах мониторинга и предоставляют агентам информацию о состоянии отслеживаемых параметров работы объектов мониторинга. Датчики используются для получения информации о состоянии только тех параметров, период опроса которых составляет более 1 секунды. Для отслеживания состояния параметров, период опроса которых должен составлять менее 1 секунды, используются агенты реального времени.
7. Агенты реального времени (АРВ) устанавливаются на узлах – объектах мониторинга – для получения значений параметров, время реакции на изменение состояния которых со стороны ССМ должно быть минимальным.
8. Виджет визуализации (ВВ) реализует функции API для доступа к системе со стороны пользователя, обеспечивает отображение поступающей от ССМ информации и получение от пользователя команд по управлению ССМ.
Принципиальное отличие представленной архитектуры от классических систем мониторинга, основанных на взаимодействии агентов с датчиками или объектами мониторинга напрямую, заключается в использовании агентов реального времени, обеспечивающих незамедлительное уведомление ССМ о нештатных ситуациях в отслеживаемых параметрах. Таким образом, отличительной особенностью предложенной архитектуры является использование активных агентов на стороне объектов мониторинга, инициирующих взаимодействие с ССМ в случае нештатных ситуаций.
Ядром системы является шасси мониторинга, основанное на шасси мониторинга Nagios, но оптимизированное для обеспечения возможности работы с системами реального времени, что потребовало изменения конфигурации ядра посредством наложения ряда специально разработанных патчей, а также разработки модуля приема данных от агентов реального времени. Агенты подключаются к ШМ с использованием стандартного механизма подключения агентов. Журналы, агенты и датчики являются стандартными компонентами системы Nagios. Прочие модули, включая агенты реального времени, разрабатываются отдельно исходя из спецификации ССМ, требований к процессам мониторинга и техническим характеристикам объектов мониторинга.
Система мониторинга, основанная на рассмотренной архитектуре, была успешно разработана и внедрена в эксплуатацию в составе бортового цифрового вычислительного комплекса для подвижных объектов [3].