OSS Storemaster

Описание системы

Информационная модель

Центральное место в "Storemaster" занимает каталог ресурсов. Его иерархическая структура состоит из узлов. На любом уровне каталога может быть создано любое количество узлов. Количество уровней каталога также не ограничено.

Узлы каталога ресурсов

Узлы каталога соответствуют наблюдаемым ресурсам и их составным частям. Например, узел может соответствовать кластеру RADIUS-серверов, дочерние узлы – отдельным RADIUS-серверам, а узлы-внуки – подсистемам RADIUS-серверов (СУБД, лог-файлы, подсистема авторизации).

На следующем рисунке условно показано несколько узлов и другие объекты "Storemaster", связанные с узлами.

Информационная модель 

Понятие узла универсально, а смысл того или иного узла определяет персонал. С точки зрения системы узел является совокупностью свойств, в которых хранятся данные. Они могут задаваться персоналом и возвращаться драйверами.

Группы и классы узлов

Каждый узел принадлежит одной и только одной группе узлов. Группы используются для управления полномочиями персонала: в учетных записях пользователей указываются группы и разрешенные действия, которые пользователь может выполнять над узлами этих групп.

Узлы могут принадлежать одному или более классам (или не принадлежать ни одному классу). Классы объединяют узлы по каким-либо общим признакам. В любой момент в системе можно сформировать список узлов, принадлежащих тому или иному классу. Перечень классов и групп определяет персонал системы.

Информационная модель 

Драйверы и профили драйверов

Узлу можно назначить драйвер, который будет периодически опрашивать какой-либо ресурс или анализировать свойства узла (в зависимости от конкретного драйвера). По результатам опроса и анализа драйвер может формировать сигналы. Если драйвер не назначен, узел является хранилищем статических данных, задаваемых персоналом.

Чтобы назначить драйвер, в настройках узла выбирают профиль драйвера. В профиле указан исполняемый модуль драйвера (java-класс) и задана периодичность запуска. Профиль драйвера служит для динамического связывания параметров драйвера со свойствами узла. Для этого в профиле указано, из каких свойств узла драйвер должен брать значения входных параметров, а в какие свойства записывать результирующие данные.

В профиле указаны не свойства конкретного узла, а названия свойств. Это делает драйвер независимым от узлов. Чтобы подключить драйвер к узлу, нужно создать профиль драйвера и указать в нем названия свойств, в которых по замыслу проектировщика содержатся входные данные драйвера. Также нужно указать названия свойств узла для результирующих данных. Чтобы подключить драйвер к узлу с другим составом свойств, достаточно создать соответствующий профиль драйвера и назначить профиль узлу. При этом для идентичных по типу узлов используется один и тот же профиль драйвера.

Связи между узлами

Связи между узлами показывают физические или логические отношения между ресурсами. Например, связь может означать, что ресурсы соединены сетевым кабелем или что блок IP-адресов относится к какому-либо маршрутизатору.

Связи существуют как обособленные узлы каталога ресурсов. Как и обычные узлы, они могут иметь свойства, в которых указаны характеристики связи (например, тип сетевого кабеля). Узлы-связи могут состоять в отношениях друг с другом, образуя многоуровневую иерархию. При этом иерархия узлов-связей обособлена от иерархии узлов, соответствующих ресурсам.

В каждом узле-связи может быть указано до двух ресурсов, расположенных на концах связи, как показано на следующем рисунке. Также связь может быть открытой, то есть ссылаться только на один ресурс, либо вообще не ссылаться на ресурсы.

Информационная модель 

Адресная информация о ресурсах

В системе можно задавать адреса ресурсов. Для этого в диалоге настройки узлов предусмотрена специальная форма.

Персонал может добавлять и изменять названия населенных пунктов, улиц, номера домов и квартир. Кроме того, каждому параметру адреса может назначаться уникальный код. Адресные коды используются для автоматического формирования значений некоторых свойств.

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

Система объединяет адресные коды и записывает полученный идентификатор в свойство узла, которое имеет признак "Зависит от адреса". При этом для разных узлов система обеспечивает уникальность идентификаторов, приписывая к ним последовательно увеличивающиеся номера.

Например, если в системе существует три узла с одинаковым адресом – Москва, Ленинский проспект, д. 38, система может сформировать три адресных идентификатора: msklensk38-1, msklensk38-2, msklensk38-3.