АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков Проблемы Текст 2
Аналоги Текст АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 3
Базовая терминология Служба - активная сущность, непрерывно наблюдающая за состоянием узла и сохраняюшщей сообщения об изменении этого состояния в хранилище данных. Задача мониторинга - шаблонная проблема получения и анализа некоторой информации о состоянии удаленного узла. Хранилище данных - пассивная сущностью, предоставляющаей службам ресурсы для приема сообщений их последующей обработки и хранения. Уезл - программно-аппаратное устройство, способное исполнять код службы мониторинга. АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 4
Абстракция модуля АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков Модуль – это пятерка вида M= {X, Di, Do, I, C}, где X ϵ {True, False} возможность исполнения в ОС, Di и Do = {a 0, a 1, …, a n }, a i – объект входные и выходные данные, I = {b 0, b 1, …, b m }, b i – метод интерфейс модуля, С – программный код реализация модуля 5
Состояние системы Состояние распределенной системы определяется: графом связности узлов, расположением запущенных экземпляров модулей и нагрузкой на узлы; Роль распределенного модуля играет служба мониторинга, нагрузки на узел – индекс производительности; Особенности службы мониторинга: масштабируемость; сериализуемость; переносимость; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 6
Структура системы 7
Служба мониторинга Функции службы мониторинга: обеспечение работы основных подсистем; распределенная коммуникация; планирование и запуск модулей; Подсистемы службы мониторинга: платформа (ядро); транспортная; исполнительная; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 8
Ядро службы мониторинга Ядро реализует базовую программную платформу в рамках которой запускаются и функционируют основные подсистемы службы; Поведение ядра описывается в терминах генерации и обработки событий; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 9
Состояния ядра неопределенное; сетевое; автономное; активное; пассивное; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 10
Драйверы ядра АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 11
Транспортная подсистема управление сессиями; мониторинг сетевой активности; именование объектов; адресация; балансировка нагрузки; выбор лидеров; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 12
Алгоритм выбора лидера Алгоритм выбора лидера основана на использовании возможностей современных сетевых протоколов: негарантированная доставка сообщений (UDP); широковещательные запросы (broadcast/multicast); Принцип работы алгоритма: каждый узел системы посылает широковещательные запросы, инкапсулирующие его состояние; после стабилизации системы или таймаута, каждый узел выбирает себе лидера из локального еша; поптытки подключения к лидерам с максимальным индексом производительности происходят циключески, до тех пор узел не перейдет в новое состояние – активное или пассивное. АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 13
Подсистема исполнения планирование запусков; запуск модулей мониторига; обработка результатов; развертывание модулей; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 14
Планировщик подсистемы исполнения АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 15
Менеджер модулей монторинга генерация кода каркаса; исполнение модулей в ОС; выполнение файловых операций; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 16
Архитектура службы мониторинга АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 17
Итоги разработана модель; Модель распределенной системы с динамически расширяемым функционалом; спроектированна архитектура; Архитектура высоконагруженной распределенной системы мониторинга; реализованны приложения; Кросплатформенное сервисное приложение распределенной службы мониторинга состоящее из: ядра / платформы; подсистемы исполнения; транспортной подсистемы; Встраиваемое приложение менеджера модулей мониторинга состоящее из: кодогенератора; подсистемы ввода/вывода; исполнителя; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 18
Пути развития проекта разработка шаблонных модулей мониторинга для решения круга повседневных задач (анализ сетевого трафика, загрузка и температура процессора, количество свободной памяти и т.д.); оформление технической документации и спецификаций программного кода; совершенствование компонентов и оптимизация алгоритмов базовой платформы; полномасштабное внедрение и нагрузочное тестирование системы на базе существующей инфраструктуры предприятия, например лаборатории МикроЭВМ АлтГТУ; АлтГТУ им. И. И. Ползунова / ПОВТ, Владимир Костюков 19