Сегодня выпущен биллинг Гидра версии 4.0. Полностью переработан механизм событий, который отвечает за управление внешним оборудованием и программными системами. Учтен опыт его эксплуатации более чем у 70 операторов.
На сегодняшний день это самая масштабная доработка Гидры.
Модуль Provisioning
Главное изменение: разработан модуль активации услуг и управления ими — Provisioning:
Он получает из биллинга и хранит в своей базе данных:
- профили (актуальное состояние) абонентского оборудования;
- профили операторского оборудования;
- информацию об оказываемых на оборудовании услугах.
Provisioning понимает, когда и какую команду необходимо выдать на оборудование для необходимого изменения конфигурации. Вот события, которые могут вызывать выдачу команд:
- подключение и отключение услуги;
- подключение и отключение тарифной опции;
- переход через границы временного интервала (например, день-ночь).
Преимущества нового модуля:
- Повышение ARPU: простая настройка тарифных опций, например, услуги «Турбокнопка» и дополнительных пакетов телеканалов.
- Высокая производительность: применение параллельных алгоритмов, асинхронных и массовых операций позволяет не беспокоиться о скорости подключения и отключения услуг на сетях с миллионами абонентов.
- Простое управление BRAS: для каждого состояния услуг, например, «отсутствие средств» или «временная блокировка» можно сделать свой профиль.
- Автогенерация событий при смене временных интервалов (услуга «Ночное ускорение») и начале/окончании периода действия адресов оборудования.
- Плавная миграция: новый механизм событий полностью независим от старого, который сохранен в целях совместимости.
- Расширяемость: есть возможность подписать свое приложение на получение событий из биллинга и модуля Provisioning.
RADIUS-агент hard 4.0
Четвертая версия отказоустойчивого агента hard построена на новой высокопроизводительной архитектуре:
- Автономный кэш заменен на полноценную базу данных, хранящую профили оборудования.
- Обновления профилей приходят в hard из модуля Provisioning в режиме push и асинхронно (это исключает перегрузки).
Такая архитектура дает следующие преимущества:
- Высокая скорость исполнения команд: задержка отправки минимальна.
- Отсутствует нагрузка на биллинг и модуль Provisioning (за исключением услуг телефонии, которые hard пока передает непосредственно в биллинг).
- При обновлении версии Гидры не нужно переводить hard в автономный режим — теперь он работает в этом режиме всегда.
- Изменение профиля приводит к автоматической отправке команд на изменение или разрыв абонентской сессии.
- В базе данных hard хранятся профили оборудования всех абонентов. Это гарантирует в случае обрыва связи с сервером биллинга полноценное обслуживание для любого абонента.
Приятный подарок для сетевых администраторов — в новом hard появились новые фильтры для конфигов, заменяющие скрипты. Даже в сложных случая программировать при настройке hard больше не нужно.
Политика совместимости
Для совместимости мы сохранили старую систему событий, которую будем поддерживать в минимально необходимом объеме ориентировочно до осени 2015 года. Она не рекомендуется к использованию в новых инсталляциях Гидры и в одной из будущих версий будет удалена. Всех клиентов служба техподдержки постепенно переведет на новую систему событий. Это будет происходить в три этапа:
- Обновление Гидры до версии 4.х.
- Настройка и тестирование новой системы событий.
- Отключение старой и активация новой системы событий.
Технические нововведения
- Все модули — биллинг, Provisioning, агенты hard и hex — взаимодействуют асинхронно с помощью специальной службы — брокера (сейчас используется ActiveMQ). К брокеру можно подключать и свои приложения, которые могут тоже участвовать в обмене данными.
- Аккаунтинг-сессии теперь хранятся отдельно от CDR и связаны с профилями. Это позволяет при изменении профиля автоматически находить привязанные к нему сессии и разрывать или изменять их. Кроме того, в сессии можно сохранять произвольные атрибуты и в дальнейшем использовать эти атрибуты в событиях.
- Профили, как и услуги в приказе по ценам, имеют двухуровневую иерархию. С тарифными планами и базовыми услугами обычно связываются родительские, а с тарифными опциями — дочерние профили, которые имеют более высокий приоритет. Это позволяет Гидре автоматически управлять параметрами оказания услуг «Турбокнопка», «Реальный/фиксированный IP-адрес» и др.
- Для исполнения provisioning-команд мы разработали новый агент hex — более совершенную версию агента hamd. Он получает команды асинхронно и может исполнять их в многопоточном режиме. Агент hamd сохранен для старой системы событий и в будущих версиях будет удален из Гидры.