Selector Conference Controller (sel)

Описание

Обеспечивает управление селекторными совещаниями.
Является надстройкой для роли conf, передавая ей ответственность за коммуникационный слой.

Не синхронизирует данные между сайтами, обслуживающими домен.
Резервируется режиме Active-Passive внутри сайта.

Table 1. Системные характеристики

Код

sel

Режим работы

Сервис, хранилище

Режим резервирования

Active-Passive

Типы сайтов

Любые

Слой

Бизнес-логика

Размещение

Внутренний

Сохранение и восстановление состояния при перезагрузке

Да

Приложение

era_sel

Собственное хранилище

ODB Mnesia

Ограничения

  • Не синхронизирует данные между сайтами, обслуживающими домен.

  • Хранит данные по запланированным, активным и прошедшим селекторым совещаниям во внутреннем объектном хранилище, не сохраняя их в реляционную БД домена.

Параметры

Table 2. Параметры
Имя Тип Умолчание Описание

name

str

required

Имя. Может состоять из латинских букв и цифр, должно начинаться с буквы.

roletype

str

required

Тип роли. Возможные значения: "sel".

iface

str

required

Алиас сетевого интерфейса сервера, на котором будет происходить внутреннее взаимодействие ролей между собой.

ext

json

empty

Дополнительные опции роли. Содержит json объект или список.

enabled

bool

empty

Флаг активности роли. При установке в false роль не участвует в валидации и не запускается.

group

int

required

Номер группы.
В рамках горизонтального масштабирования роль может быть разделена на несколько групп на сайте, в каждой из которых активен только один экземпляр, а остальные зарезервированы.
Ответственность между группами разделяется по доменным множествам. Вместе все группы обслуживают полное доменное множество. Все роли одной группы должны иметь одинаковую ответственность.
Целое число от 1 до 9999999.

order

int

required

Порядок экземпляра роли в рамках группы.
Определяет в каком порядке будет происходить перетекание в режиме Active-Passive.

takeover

bool

global

Выключатель режима takeover.

Failover - активация менее приоритетного экземпляра сервиса при обнаружении недоступности более приоритетного экземпляра сервиса (лидера группы active-passive).
Takeover - активация более приоритетного экземпляра сервиса (лидера группы active-passive) во время его восстановления, сопровождающееся остановкой сервиса на менее приоритетном экземпляре сервиса.

  • Если режим включен - takeover осуществляется автоматически.

  • Если режим выключен - takeover не осуществляется, восстановленный лидер группы временно становится фолловером и ожидает выгрузки сервиса на менее приоритетном экземпляре.

  • Если опция не задана, то применяется ее значение из параметров текущего сайта. Если не задано в сайте, то применяется значение из раздела general. Если нигде не задано - takeover включен для более точного распределения нагрузки по заданным в конфигурации приоритетам.

Пример конфигурации

Управление конфигурацией производится в приложении, доступном для администраторов мастер-домена. Приложение скрывает полное содержание конфигурации, однако тем не менее оно доступно через API.

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

Пример узла
{
  "name": "sel1",
  "roletype": "sel",
  "iface": "eth0",

  "group": 11060,
  "order": 10
}

См. также