среда, 25 февраля 2015 г.

Call-центр\IP PBX Oktell: Отказоустойчивость (неваляшка)

IP PBX Oktell


Перед нами стояла задача построить отказоустойчивую  телефонию на базе Oktell АТС с модулем Call-центр.
Вводные данные:
  • 567 рабочих мест
  • Существующая АТС на вход\выход 3 E1 потока. С сохранением на 1 этапе

Основная цель -  что бы всегда работала телефония. В случае падения основного сервера  время переключения на резервный не должно превышать 1 минуты.

Oktell АТС состоит из нескольких служб:
  • Сервер логики
  • Сервер БД
  • Файловый сервер (запись разговоров, логирование, сценарии, звуковое сопровождение)
  • Сервер видеоконференций
  • Сервер межсерверного взаимодействия
Данные службы могут работать на одной серверной машине, или быть разнесены на разные, с целью снятия нагрузки.
Основная нагрузка в данном проекте ложилась на запись разговоров, логирование системы и сохранение статистики т.е. на жесткие диски. Поэтому сервер БД и файл сервер вынесли на отдельную машину.

Сервер логики

Два сервера логики следят за состоянием друг друга и если резервный сервер видит, что основной не работает, отправляет уведомление администраторам и активирует свою работу.
При восстановления работоспособности основного сервера отправляется команда рестарт на резервный сервер.

Так как оба сервера логики смотрят на один и тот же файл сервер и на один и тот же сервер БД, то все изменения вносимые на любом сервере логики применяются сразу для обоих серверов.

Провайдер связи

Е1 потоки провайдер завели в Oktell через три одна-потоковый шлюза Е1-SIP Yeastar NeoGate TE100. Каждый шлюз настроен на оба сервера Oktell без регистрации. При недоступности основного сервера, шлюз позволяет совершать и принимать звонки с резервного сервера.

Абонентские устройства

В качестве абонентских устройств использовались клиентское приложение Oktell+гарнитура и IP-телефоны Yealink t19, t26, t21, wp52.
  1. Клиентские приложения, при недоступности основного сервера, подключаются к резервному серверу.
  2. IP-телефоны Yealink позволяют при одном канале держать регистрацию на два SIP сервера одновременно: основной и резервный. В случае недоступности основного сервера, телефон позволяет совершать и принимать звонки с резервного сервера.