Skip to Content

Отказоустойчивый кластер для Asterisk PBX

Для тех организаций, в деятельности которых устойчивая работа систем телефонии играет важную роль, мы предлагаем внедрение VoIP-платформ на основе Asterisk в конфигурации отказоустойчивого (high available, HA) кластера.

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

Рассмотрим варианты действий при решении проблемы:

  1. Замена системы (например, по гарантии). Время на процесс замены и повторной настройки может составить от суток до нескольких недель, в зависимости от доступности оборудования и наличия резервных копий конфигурации. Также теряются данные с момента последнего копирования.

  2. Установка системы из резервной копии (на заранее приобретенное оборудование). Время восстановления составит от часа до суток. Данные с момента снятия последней копии также теряются.

  3. Внедрение HA-кластера. Время простоя составит от нескольких секунд до минуты с минимальным риском потери данных. Для критичных систем рекомендуется именно такой метод упреждающего решения проблемы.

Описание решения

Asterisk HA-cluster scheme

Логическая схема построения HA-кластера для Asterisk

Реализация механизма отказоустойчивости в предлагаемом решении выглядит следующим образом.

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

    должен принять на себя задачи основного в случае выхода того из строя.

  • Для обеспечения синхронизации содержимого дисковой подсистемы серверов применяется технология DRBD, обеспечивающая репликацию данных через локаьлную сеть. Для повышения надежности используется резервирование сетевіх интерфейсов (ethernet bonding).

  • На всех узлах кластера устанавливается приложение heartbeat из пакета приложений Linux-HA, которая обеспечивает взаимный мониторинг компонент платформы и, в случае выхода из строя основного сервера, запуск всех программных компонент на резервном сервере.

  • Для прозрачного переключения на сервере, активном в настоящий момент, используется единый IP-адрес, по которому функции сервера (VoIP-платформа) доступны для внешних приложений.

При этом, физически решение выглядит как два независимых сервера, находящиеся в одной IP-сети с общим IP-адресом, который при сбое "мигрирует" на резвервный сервер.

Подобная схема обеспечения отказоустойчивости при выполнении основных требований к окружению (продуманная топология IP-сети, резервирование электропитания и т.п.) может обеспечивать надежность на уровне 99,99% без применения какого-либо специализированного дорогостоящего оборкдования.

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

В качестве примера рассмотрим обеспечение отказоустойчивости IP-АТС небольшого предприятия.

Начальная конфигурация:

  • В качестве сервера IP-АТС используется Dell PowerEdge R300
  • Сервер подключен к LAN через коммутатор Linksys SRW-2024

Для внедрения HA-кластера дополнительно устанавливается:

  • Резервный сервер на базе Dell PowerEdge R300
  • Дополнительный коммутатор Linksys SRW-2024

Теперь после установки и настройки программных компонент кластера и переносе существующих сервисов IP-PBX (Asterisk, СУБД и т.д.) под управление пакета Linux-HA, работоспособность платформы в случае сбоя будет автоматически восстановлена в течение нескольких секунд.

Asterisk HA Cluster