Распределенные операции
SberMobile входит в число немногих известных во всем мире систем мониторинга и управления устройствами, поддерживающих распределенную архитектуру. Подобная архитектура строится с целью безграничного масштабирования методами балансировки нагрузки между серверами SberMobile, разбитыми на множество уровней. Ожидается, что в-основном подобную архитектуру будет иметь ПО будущего.
В отличие от узлов отказоустойчивого кластера SberMobile, сервера, принимающие участие в распределенной системе, являются независимыми. Каждый сервер имеет свою собственную базу данных, профили пользователей, права доступа и пр.
Предназначение распределенных операций
Основными целями создания распределенной системы являются:
- Масштабируемость. Нижестоящие узлы могут подвергаться высокой нагрузке высокоскоростными протоколами обмена данными и частыми опросами устройств. На практике число устройств, которыми может управлять один сервер, ограничено несколькими тысячами. Чтобы увеличить производительность системы и обслуживать большее число устройств, необходимо установить несколько серверов и ввести их в единую группу распределенной системы.
- Балансировка нагрузки. Каждый сервер в распределенной инсталляции решает свои собственные задачи. Сервера управления сетью проверяют доступность и работоспособность сетевой инфраструктуры, в то время как сервера контроля доступа обрабатывают запросы с дверных и турникетных контроллеров. А контроль за деятельностью этих серверов и генерирование отчетов может выполняться центральным сервером.
- Обход фаерволов. Вторичные сервера могут устанавливаться на удаленных участках сети с подключением к центральному серверу. Системные администраторы подключают такие вторичные сервера из своих подсетей к центральному серверу через VPN или пробросом портов.
- Централизация. Вторичные сервера могут рабоать в полностью автоматизированном режиме, в то время как их общая операция будет контролироваться человеком посредством основного сервера, установленного в центральный командный пункт.
Распределенная архитектура идеально подходит для производственного контроля и операций настроек в большой мультисерверной инсталляции SberMobile. Что касается передачи данных между системными уровнями или узлами горизонтального кластера, то для этого должен использоваться драйвер Локальный агент. |
Пример 1: Система управления умным городом
Приведем в качестве примера многоуровневую конфигурацию SberMobile для управления и мониторинга умным городом:
- Уровень 1: оборудование (маршрутизаторы, контроллеры, промышленное оборудование и пр.)
- Уровень 2: серверы прямого управления (сервер управления сетью, сервер доступа, сервер автоматизации здания и пр.)
- Уровень 3: центральный сервер здания (один на дом, объединяет информацию со всех "специализированных" серверов Уровня 2 в этом здании)
- Уровень 4: сервера городских районов (конечные точки оповещений о событиях нижестоящих уровней, управляются людьми-операторами в режиме реального времени, интегрированы с системами CRM)
- Уровень 5: головной сервер (управление серверами районов, сбор отчетов и оповещений о событиях)
Каждый из серверов SberMobile в этой схеме, конечно, может являться многоузловым отказоустойчивым кластером.
Пример 2: Мультисегментное управление сетью
Система SberMobile Network Manager, построенная на SberMobile - это один из наиболее типичных примеров использования распределенной архитектуры. Невозможно контролировать большие сегментированные сети корпораций и операторов дальней связи из одного места в связи с ограничениями маршрутизации, проблемами безопасности и ограниченной пропускной способностью между отдельными географическими сегментами.
Поэтому единая система мониторинга обычно состоит из нескольких компонентов:
- Главный или центральный сервер, объедняющий информацию из всех сегментов сети
- Вторичные сервера, производящие опрос устройств в изолированных сегментах
- Специализированные сервера, такие как сервера для анализа трафика, обрабатывающие миллиарды событий NetFlow в день
Вторичные и специализированные сервера действуют как поставщики данных для главного сервера, предоставляя часть своей модели данных центру управления. Это может быть:
- Все содержимое контекстного дерева вторичного сервера, предоставляющее полный мониторинг и конфигурирование через центральный сервер. В этом случаев вторичный сервер используется только как прокси для решения вопросов сегментации сети.
- Оповещения, сгенерированные вторичными серверами. В этом случае 99% работы выполняется удаленно, но операторы центрального сервера сразу же информируются о событиях, происходящих во вторичном сегменте.
- Пользовательский набор данных вторичного сервера, такой как устройства по решению критических задач и важные обзорные отчеты. Фактические опросы и генерирование отчетов осуществляются вторичным сервером, повзоляя правильно сбалансировать нагрузку системы
Плагин для распределенной архитектуры
Связь поставщик/потребитель в SberMobile Server реализуется плагином Распределенной Архитектуры. Глобальный конфигурационный контекст этого плагина предоставляет доступ к: