Для принятия управленческих решений, контроля поведения и получения необходимой информации о работе распределенных систем необходима система мониторинга. В статье рассматривается общая модель системы мониторинга, основанная на жизненном цикле информации этой системы, который состоит из четырех этапов — генерации, обработки, распространения и представления. Обобщенный сервис мониторинга для распределенных систем может быть построен как конфигурация общих компонентов, которые могут выполнять функции, определенные в модели.
Ключевые слова: распределенная система мониторинга, управляемый объект, модель, управление, обработка информации.
Типичная распределенная система состоит из ряда процессов, которые выполняются на разных машинах и взаимодействуют для выполнения общей задачи. Процессы координируют свою деятельность, отправляя сообщения по сети связи. Примеры таких систем включают управление процессами, телекоммуникационные и банковские приложения. Распределенные системы предлагают ряд преимуществ по сравнению с централизованными системами: сниженная стоимость, более высокая надежность и доступность, простота модульности, улучшенная производительность, лучшее время отклика, гибкость конфигурации, постепенный рост.
По мере увеличения использования распределенных систем способность контролировать их поведение приобретает важное значение на всех этапах их жизненного цикла от стадии разработки до повседневного управления. Мониторинг распределенных систем включает динамический сбор, обработку и представление информации, касающейся исследуемых объектов или программных процессов. Система мониторинга необходима для различных целей, таких как отладка, тестирование и визуализация программы. Также она используется для общей управленческой деятельности, которая носит более постоянный и непрерывный характер. Эта деятельность включает: управление производительностью и качеством обслуживания, управление конфигурацией, устранение неисправностей, управление безопасностью, бухгалтерский учет.
Управляемая распределенная система состоит из ряда управляемых объектов. Управляемый объект определяется как любой аппаратный или программный компонент, поведение которого может контролироваться системой управления. Интерфейс каждого объекта инкапсулирует его состояние и поведение и может скрывать внутренние детали, жизненно важные для выполнения действий управления. Любая внутренняя информация или операции, необходимые извне, должны быть видны через этот интерфейс, который можно разделить на две части, как показано на рисунке 1:
– операционный интерфейс, который выполняет основную цель услуги, предоставляемой объектом;
– интерфейс управления, который поддерживает мониторинг и контроль взаимодействия с системой управления [1].
Рис. 1. Управляемый объект
Интерфейс управления поддерживает три типа операций:
– получение запросов на информацию о статусе, которые могут поступать периодически (например, опрос) или на произвольной основе;
– формирование контрольной информации о поведении и состоянии объекта в виде отчетов о событиях и состоянии. Отчеты о событиях создаются в результате изменения состояния или выполнения определенной операции. Отчеты о состоянии могут создаваться периодически или в ответ на внешние запросы;
– получение управляющих команд, определяющих действия, выполняемые над объектом (например, остановка) [2].
Отчеты мониторинга используются персоналом или автоматизированными менеджерами для принятия управленческих решений, что приводит к контрольным действиям, которые могут изменять поведение управляемых систем, как показано на рисунке 2.
Рис. 2. Модель управления
В отличие от мониторинга, который обычно является пассивным процессом, контроль активно изменяет поведение управляемой системы. В статье рассматривается только мониторинговый аспект управления.
В больших распределенных системах количество и частота генерируемых отчетов мониторинга таковы, что они могут быстро увеличиваться за счет использования доступных ресурсов обработки, хранения и связи. C точки зрения любого отдельного менеджера, значительная часть этой информации может быть неактуальной или просто находиться на неправильном уровне абстракции. Более того, скорость создания этих отчетов может быть слишком высокой, чтобы менеджеры могли наблюдать или анализировать их.
Обобщенная служба мониторинга должна обеспечивать поддержку фильтрации и корреляции, которые позволяют отбросить и повысить уровень абстракции информации мониторинга, соответственно. Фильтрация и корреляция — это дополнительные методы, которые необходимы для управления большим объемом информации мониторинга в больших распределенных системах.
Служба мониторинга должна иметь возможность контролировать большие системы с сотнями или, возможно, тысячами объектов (например, телекоммуникационные системы). В ряде систем используется централизованный подход для фильтрации и сопоставления отчетов мониторинга, созданных из этих распределенных источников. Проблема с этим подходом заключается в том, что все отчеты должны отправляться на централизованный сервер мониторинга, что может вызвать значительный сетевой трафик в больших системах. Это предусматривает распределенную службу мониторинга, компоненты которой сами физически распределены по системе и взаимодействуют друг с другом, чтобы распознавать события и состояния на нескольких узлах. Это сокращает накладные расходы на связь, хранение и обработку и упрощает доступ к необходимой информации. Компоненты распространения необходимы для отправки необходимых отчетов тем, кто в них нуждается [5].
По мере развития систем часто возникает необходимость изменять их, добавляя новые или удаляя существующие машины и объекты (например, в результате сбоев или обновлений системы). Это, в свою очередь, может потребовать соответствующего изменения или расширения функций управления системой. Поэтому очень желательна возможность динамического изменения конфигурации и функциональности распределенной службы мониторинга без необходимости останавливать работу всей системы. Эта гибкость может быть обеспечена за счет поддержки динамической реконфигурации и предоставления компонентов, которые могут интерпретировать спецификации мониторинга.
Мониторинг может повлиять на поведение наблюдаемой системы. Это называется вмешательством или эффектом зонда и означает, что отслеживаемые и неконтролируемые системы могут вести себя по-разному. Это особенно верно, когда приложение ссылается на внешнее состояние или на его поведение. В целом такое вторжение или вмешательство нежелательно и должно быть уменьшено или, по возможности, полностью устранено.
Служба мониторинга должна допускать частичные отказы, которые являются нормой жизни в распределенной среде. Как контролируемые, так и контролирующие компоненты могут выйти из строя. Это может привести к ошибочным или неполным представлениям о поведении и состоянии системы.
Выводы
В статье представлена общая модель мониторинга, которая расширяет существующие модели, чтобы охватить все аспекты жизненного цикла мониторинга. Модель состоит из четырех основных этапов; генерация, обработка, распространение и представление информации мониторинга и используется для характеристики процесса мониторинга и определения функций, выполняемых универсальной службой мониторинга.
Литература:
- Макаpов И. М., Лохин В. М., Манько С. В., Романов М. П., Ситников М. С. Устойчивость интеллектуальных систем автоматического управления / Информационные технологии. Приложение. 2013, № 2.
- Stouffer K., Falco J., Scarfone K. Guide to Industrial Control Systems (ICS) Security. [Электронный ресурс]. National Institute of Standards and Technology Gaithersburg. Gaithersburg, Maryland, USA. 2011.
- Meixell B., Forner E. Out of Control: Demonstrating SCADA Exploitation // Black Hat 2013. [Электронный ресурс]. Black Hat Conference. Las Vegas, Nevada, USA. 2013.
- Глебов О. А. Защита автоматизированных систем управления промышленных предприятий. // Мобильные телекоммуникации. № 6. 2012.
- Zeng W. Secure Distributed Control Methodologies with Built-in Defense in Distributed Networked Control Systems. [Электронный ресурс]. North Carolina State University. Raleigh, North Carolina, USA. 2013.