Кластер организуется из двух одинаковых устройств. Работает в режиме Active-Standby, т. е. на Active запущены все модули ESBC, и он занимается обработкой сигнальных сообщений SIP и медиаданных (RTP-потоков). Устройство Standby не обрабатывает сигнальные сообщений SIP и потоки RTP.
Резервирование соединения осуществляется протоколом VRRP.
Конфигурация, файлы ПО, зарегистрированные абоненты синхронизируются между устройствами в реальном времени. В случае обрыва соединения или отключения Active-устройства, все существующие вызовы будут разрушены.
Время до начала обработки вызовов при failover зависит от вызывной нагрузки на устройство и составляет от 2 до 12 секунд. |
Более подробное описание настройки кластера приведено в документации ESR. Ниже представлен пример настройки ESBC-3200 для обработки вызовов.
Значения параметров для ESBC-3200 идентичны значениям для ESR-3200. |
В текущей версии ПО поддерживается HA Cluster из 2 юнитов. |
Схема:

Для начала работы необходимо полностью настроить одно устройство из кластера.
После включения устройства примените конфигурацию по умолчанию на устройствах, предназначенных для объединения в кластер:
ESBC-3200# copy system:default-config system:candidate-config Entire candidate configuration will be reset to default, all settings will be lost upon commit. Do you really want to continue? (y/N): y |******************************************| 100% (59B) Default configuration loaded successfully. |
Для более удобного и ясного восприятия рекомендуется переименовать устройства. В кластерной версии прошивки предусмотрена возможность указать имя устройства с привязкой к юниту. Устройство будет использовать только тот hostname, юнитом которого он является:
ESBC-3200# configure ESBC-3200(config)# hostname ESBC-1 unit 1 ESBC-3200(config)# hostname ESBC-2 unit 2 |
В конфигурации может одновременно находиться hostname с unit и hostname без unit. Более приоритетным является hostname, указанный с привязкой к unit. |
Чтобы изменить юнит устройства, выполните следующие команды:
ESBC-1# set unit id 1 Unit ID will be 1 after reboot ESBC-1# reload system Do you really want to reload system now? (y/N): y |
Смена юнита устройства вступает в силу после перезагрузки. |
При изменении номера юнита ESBC не происходит автоматической конвертации конфигурации. |
В заводской конфигурации ESBC-3200 присутствуют настройки интерфейсов только для юнита по умолчанию (unit = 1). |
Убедитесь в том, что настройки юнитов применились успешно:
ESBC-1# show unit id Unit ID is 1 Unit ID will be 1 after reboot |
Объединение устройств в кластер невозможно, если они относятся к одному и тому же юниту. |
На обоих устройствах необходимо настроить IP-адрес и VRRP на внешних интерфейсах. В текущей схеме это интерфейсы twe1/0/7 и twe2/0/7.
ESBC-1(config)# interface twentyfivegigabitethernet 1/0/7 ESBC-1(config-if-twe)# ip address 192.168.83.80/22 ESBC-1(config-if-twe)# vrrp 10 ESBC-1(config-vrrp)# ip address 192.168.83.82/22 ESBC-1(config-vrrp)# group 2 ESBC-1(config-vrrp)# enable ESBC-1(config-vrrp)# exit ESBC-1(config-if-twe)# exit ESBC-1(config)# interface twentyfivegigabitethernet 2/0/7 ESBC-1(config-if-twe)# ip address 192.168.83.79/22 ESBC-1(config-if-twe)# vrrp 10 ESBC-1(config-vrrp)# ip address 192.168.83.82/22 ESBC-1(config-vrrp)# group 2 ESBC-1(config-vrrp)# enable ESBC-1(config-vrrp)# exit ESBC-1(config-if-twe)# exit |
Также на VRRP-интерфейсе можно назначить разные приоритеты для разных юнитов.
|
Допускается использование IP-адреса VRRP из подсети, отличной от подсети физического интерфейса. |
Для полноценной работы кластера требуется сконфигурировать кластерный интерфейс, который будет использоваться для передачи control plane трафика. В качестве кластерного интерфейса назначен bridge. В качестве механизма, отвечающего за определение ролей устройств, участвующих в резервировании, назначен протокол VRRP. Настройки cluster-интерфейса должны быть идентичны для всех участников кластера.
Так как кластер выполняет синхронизацию состояний между устройствами, необходимо создать зону безопасности SYNC (synchronization):
ESBC-1(config)# security zone SYNC ESBC-1(config-zone)# exit ESBC-1(config)# ESBC-1(config)# security zone-pair SYNC self ESBC-1(config-zone-pair)# rule 1 ESBC-1(config-zone-pair-rule)# action permit ESBC-1(config-zone-pair-rule)# match protocol vrrp ESBC-1(config-zone-pair-rule)# enable ESBC-1(config-zone-pair-rule)# exit ESBC-1(config-zone-pair)# exit |
Далее перейдите к настройкам кластерного интерфейса:
ESBC-1# configure ESBC-1(config)# bridge 1 ESBC-1(config-bridge)# vlan 1 ESBC-1(config-bridge)# security-zone SYNC ESBC-1(config-bridge)# ip address 192.18.1.10/24 unit 1 ESBC-1(config-bridge)# ip address 192.18.1.20/24 unit 2 ESBC-1(config-bridge)# vrrp 1 ESBC-1(config-vrrp)# group 2 ESBC-1(config-vrrp)# ip address 192.18.1.100/24 ESBC-1(config-vrrp)# enable ESBC-1(config-vrrp)# exit ESBC-1(config-bridge)# enable |
В текущей версии ПО в качестве cluster-интерфейса поддержан только bridge. |
Для работы кластерного интерфейса поддерживается только IPv4-адресация. На cluster-интерфейсе необходима настройка адресов с привязкой к unit. |
В текущей схеме служебная информация по управлению кластером будет передаваться через выделенный линк синхронизации между интерфейсами twe1/0/3 и twe2/0/3.
ESBC-1(config)# interface twentyfivegigabitethernet 1/0/3 ESBC-1(config-if-twe)# description "Network: SYNC" ESBC-1(config-if-twe)# mode switchport ESBC-1(config-if-twe)# exit ESBC-1(config)# interface twentyfivegigabitethernet 2/0/3 ESBC-1(config-if-twe)# description "Network: SYNC" ESBC-1(config-if-twe)# mode switchport ESBC-1(config-if-twe)# exit |
Для запуска кластера нужно только указать заранее настроенный кластерный интерфейс и юниты, которые будут выполнять роли Active и Standby.
Перейдите в настройку кластера:
ESBC-1# configure ESBC-1(config)# cluster ESBC-1(config-cluster)# unit 1 ESBC-1(config-cluster-unit)# mac-address 68:13:e2:e1:28:90 ESBC-1(config-cluster-unit)# exit ESBC-1(config-cluster)# unit 2 ESBC-1(config-cluster-unit)# mac-address 68:13:e2:e1:25:30 ESBC-1(config-cluster-unit)# exit |
В качестве mac-address указывается системный MAC-адрес устройства, его можно узнать с помощью команды show system | include MAC. |
Укажите кластерный интерфейс, созданный ранее, и активируйте кластер:
ESBC-1(config-cluster)# cluster-interface bridge 1 ESBC-1(config-cluster)# enable ESBC-1(config-cluster)# do commit ESBC-1(config-cluster)# do confirm |
Первое устройство полностью настроено и готово к работе.
Аналогичные настройки необходимо произвести на втором устройстве, предварительно сменив у него юнит на требуемый.
Также возможна настройка второго устройства средствами ZTP.
Для активации процесса ZTP необходимо на втором устройстве запустить dhcp-client на bridge-интерфейсе, логический или физический интерфейс которого будет включен в кластерный интерфейс первого устройства. В качестве примера такой конфигурации подойдет factory-конфигурация. В процессе ZTP устройство автоматически выставит себе: 1) Конфигурацию; 2) Юнит; 3) Версию ПО, на котором работает Active ESBC; 4) Лицензию, если она предварительно загружена на Active ESBC. |
После выполнения этих шагов кластер будет успешно запущен. Текущее состояние кластера можно узнать, выполнив команду:
ESBC-1# show cluster status Unit Hostname Role MAC address State IP address ---- -------------------- ---------- ----------------- -------------- --------------- 1* ESBC-1 Active 68:13:e2:e1:28:90 Joined 192.18.1.10 2 ESBC-2 Standby 68:13:e2:e1:25:30 Joined 192.18.1.20 |
После включения кластера и установления юнитов в состояние Joined дальнейшее конфигурирование устройств осуществляется настройкой Active-устройства. Синхронизируются команды конфигурации, а также команды: commit, confirm, rollback, restore, save, copy <source> system:candidate-config. В случае если конфигурирование осуществляется на Standby, то внесенные изменения в конфигурацию засинхронизированы не будут. Все внесённые изменения в конфигурацию Standby будут потеряны при выполнении commit на Active-устройстве. Есть возможность отключения синхронизации командой sync config disable. |
Для проверки работы протокола VRRP выполните следующую команду:
ESBC-1# show vrrp Virtual router Virtual IP Priority Preemption State Synchronization group ID -------------- ----------------- -------- ---------- ------ ------------------------- 1 192.18.1.100/24 100 Enabled Master 2 10 192.168.83.82/22 100 Enabled Master 2 |
Также можно посмотреть состояние синхронизации различных подсистем в кластере, выполнив команду:
ESBC-1# show cluster sync status System part Synced ---------------------- ------ candidate-config Yes running-config Yes SW version Yes licence Yes licence (After reboot) Yes date Yes E-SBC version Yes |
Через минуту после включения кластера синхронизируется время, на Standby установится время Active-юнита. Синхронизация времени проверяется раз в минуту, в случае расхождения время синхронизируется. |
Работа с лицензиями в кластере описана в разделе Лицензирование в кластере. |
При использовании в конфигурации ESBC файлов сертификатов и ключей, например, в конфигурации криптопрофилей ESBC, загружаемых на устройство пользователем, необходимо наличие данных файлов на обоих юнитах в кластере. |
Загрузить файлы можно отдельно на каждый юнит кластера или использовать механизм синхронизации crypto-sync.
Задача:
Использовать сертификаты CA.pem, CERT.pem и приватный ключ PRIVATE_KEY.key в конфигурации криптопрофиля ESBC.
Решение:
ESBC-1# ESBC-1# configure ESBC-1(config)# object-group network SYNC_DST ESBC-1(config-object-group-network)# ip address-range 192.18.1.20 unit 1 ESBC-1(config-object-group-network)# ip address-range 192.18.1.10 unit 2 ESBC-1(config-object-group-network)# exit ESBC-1(config)# object-group network SYNC_SRC ESBC-1(config-object-group-network)# ip address-range 192.18.1.10 unit 1 ESBC-1(config-object-group-network)# ip address-range 192.18.1.20 unit 2 ESBC-1(config-object-group-network)# exit ESBC-1(config)# |
ESBC-1(config)# ip failover ESBC-1(config-failover)# local-address object-group SYNC_SRC ESBC-1(config-failover)# remote-address object-group SYNC_DST ESBC-1(config-failover)# vrrp-group 2 ESBC-1(config-failover)# exit ESBC-1(config)# |
ESBC-1(config)# crypto-sync ESBC-1(config-crypto-sync)# remote-delete ESBC-1(config-crypto-sync)# enable ESBC-1(config-crypto-sync)# exit ESBC-1(config)# do commit ESBC-1(config)# do confirm |
ESBC-1# ESBC-1# copy tftp://192.168.1.1:/CA.pem crypto:cert/CA.pem |******************************************| 100% (1277B) Crypto file loaded successfully! ESBC-1# ESBC-1# copy tftp://192.168.1.1:/CERT.pem crypto:cert/CERT.pem |******************************************| 100% (1155B) Crypto file loaded successfully! ESBC-1# ESBC-1# copy tftp://192.168.1.1:/PRIVATE_KEY.key crypto:private-key/PRIVATE_KEY.key |******************************************| 100% (1675B) Crypto file loaded successfully! |
4. Проверьте, что файлы сертификатов и приватного ключа были скопированы на второй юнит:
#Проверка состояния синхронизации crypto на мастер-юните:
ESBC-1# sh crypto-sync
Role: Master
State: Synchronized
Last synchronization: 2026-03-04 08:56:10
#Проверка наличия файлов на втором юните:
ESBC-2# dir crypto:cert/
Name Type Size Last modified
---------------------------------- ---------- -------- -- -------------------------
CA.pem File 1.13 KB Wed Mar 4 08:37:43 2026
default_ca.pem File 1.38 KB Wed Feb 25 11:06:17 2026
default_cert.pem File 1.22 KB Wed Feb 25 11:06:17 2026
CERT.pem File 1.25 KB Wed Mar 4 08:37:25 2026
ESBC-2# dir crypto:private-key/
Name Type Size Last modified
--------------------------------- ---------- -------- -- -------------------------
default_ca_key.pem File 1.66 KB Wed Feb 25 11:06:17 2026
default_cert_key.pem File 1.66 KB Wed Feb 25 11:06:17 2026
PRIVATE_KEY.key File 1.64 KB Wed Mar 4 08:38:04 2026
|
5. Настройте криптопрофиль с загруженными сертификатами и приватным ключем на мастер-устройстве:
ESBC-1# ESBC-1# configure ESBC-1(config)# esbc ESBC-1(config-esbc)# crypto profile TEST ESBC-1(config-esbc-crypto-profile)# ca CA.pem ESBC-1(config-esbc-crypto-profile)# cert CERT.pem ESBC-1(config-esbc-crypto-profile)# private-key PRIVATE_KEY.key ESBC-1(config-esbc-crypto-profile)# exit ESBC-1(config-esbc)# exit ESBC-1(config)# do commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 120 seconds. ESBC-1(config)# do confirm Configuration has been confirmed. Commit timer canceled. vesbc1(config)# |
Развернуть кластер из двух vESBC в среде виртуализации VirtualBox 7.1.0.

После успешного выполнения описанных пунктов можно приступать к настройке юнитов кластера vESBC, алгоритм настройки полностью аналогичен настройке ESBC-3200 и описан в разделе Первичная настройка кластера, за исключением конфигурации второго юнита с помощью ZTP.
Для объединения в кластер vESBC предварительно необходимо сделать разные системные MAC-адреса на устройствах путем смены серийного номера. |
Развернуть кластер из двух vESBC в среде виртуализации QEMU/KVM на базе ОС Ubuntu 20.04.6 TLS.

Не используйте режим интерфейса macvtap при организации каластера vESBC, т. к. при использовании протокола VRRP MAC-адрес vESBC будет отличаться от MAC-адреса сетевого интерфейса, и трафик не будет передаваться в виртуальную машину из-за особенностей реализации драйвера macvtap. |
После успешного выполнения описанных пунктов можно приступать к настройке юнитов кластера vESBC, алгоритм настройки полностью аналогичен настройке ESBC-3200 и описан в разделе Первичная настройка кластера, за исключением конфигурации второго юнита с помощью ZTP.
Для объединения в кластер vESBC предварительно необходимо сделать разные системные MAC-адреса на устройствах путем смены серийного номера. |
Развернуть кластер из двух vESBC в среде виртуализации XEN на базе ОС Ubuntu 22.04.5 TLS.

Не используйте режим интерфейса macvtap при организации каластера vESBC, т. к. при использовании протокола VRRP MAC-адрес vESBC будет отличаться от MAC-адреса сетевого интерфейса, и трафик не будет передаваться в виртуальную машину из-за особенностей реализации драйвера macvtap. |
После успешного выполнения описанных пунктов можно приступать к настройке юнитов кластера vESBC, алгоритм настройки полностью аналогичен настройке ESBC-3200 и описан в разделе Первичная настройка кластера, за исключением конфигурации второго юнита с помощью ZTP.
Для объединения в кластер vESBC предварительно необходимо сделать разные системные MAC-адреса на устройствах путем смены серийного номера. |
Развернуть кластер из двух vESBC в среде виртуализации XCP-ng 8.3 LTS + XEN Orchestra.


3. Выполните пункты 1-2 для второй виртуальной машины vESBC.
После успешного выполнения описанных пунктов можно приступать к настройке юнитов кластера vESBC, алгоритм настройки полностью аналогичен настройке ESBC-3200 и описан в разделе Первичная настройка кластера, за исключением конфигурации второго юнита с помощью ZTP.
Для объединения в кластер vESBC предварительно необходимо сделать разные системные MAC-адреса на устройствах путем смены серийного номера. |
interface gigabitethernet 1/0/1
security-zone WAN
ip address 1.0.0.1/24 // IP-адрес физического интерфейса
vrrp 35
ip address 192.168.34.144/20 // IP-адрес VRRP из другой подсети
group 1
enable
exit
exit |
Для активации процесса ZTP необходимо на втором устройстве vESBC запустить dhcp-client на bridge-интерфейсе, логический или физический интерфейс которого будет включен в кластерный интерфейс первого устройства. В процессе ZTP устройство автоматически выставит себе: 1) Конфигурацию; 2) Юнит; 3) Версию ПО, на котором работает Active ESBC; 4) Лицензию, если она предварительно загружена на Active ESBC. |
Алгоритм подключения vESBC с использованием ZTP:
vesbc# copy system:default-config system:candidate-config |******************************************| 100% (52B) Configuration loaded successfully. vesbc# show unit id Unit ID is 1 Unit ID will be 1 after reboot vesbc# commit vesbc# confirm |
vesbc(config)# interface gigabitethernet 1/0/2 vesbc(config-if-gi)# mode switchport vesbc(config-if-gi)# exit |
vesbc(config)# bridge 1 vesbc(config-bridge)# vlan 1 vesbc(config-bridge)# ip address dhcp vesbc(config-bridge)# enable vesbc(config-bridge)# do commit vesbc(config-bridge)# do confirm |
Через несколько секунд после применения изменений начнётся процедура синхронизации:
2026-03-30T05:40:12+00:00 %CLUSTER-I-ZTP_INFO: cluster detected by DHCP client 2026-03-30T05:40:12+00:00 %CLUSTER-I-SYNC_SYSTEM_INFO: start system synchronization with Active unit 2026-03-30T05:40:13+00:00 %FILE_MGR-I-INFO: operation started: 'copy tftp://192.168.16.100:/ESR-running-config system:candidate-config' (index: 2, origin: Cfgsync-mgr) 2026-03-30T05:40:13+00:00 %FILE_MGR-I-INFO: operation is finished: 'copy tftp://192.168.16.100:/ESR-running-config system:candidate-config' (index: 2, origin: Cfgsync-mgr) 2026-03-30T05:40:13+00:00 %FILE_MGR-I-INFO: operation started: 'copy tftp://192.168.16.100:/vESBC-active-firmware system:firmware' (index: 3, origin: Cfgsync-mgr) 2026-03-30T05:40:44+00:00 %FIRMWARE-I-INFO: Verify firmware... 2026-03-30T05:40:45+00:00 %FIRMWARE-I-INFO: Extracting firmware... 2026-03-30T05:40:46+00:00 %FIRMWARE-I-INFO: Remove old image2... 2026-03-30T05:40:49+00:00 %FIRMWARE-I-INFO: Copy kernel to image2 ... 2026-03-30T05:40:49+00:00 %FIRMWARE-I-INFO: Copy rootfs to image2 ... 2026-03-30T05:40:49+00:00 %FIRMWARE-I-INFO: Copy version to image2 ... 2026-03-30T05:40:51+00:00 %FILE_MGR-I-INFO: operation is finished: 'copy tftp://192.168.16.100:/vESBC-active-firmware system:firmware' (index: 3, origin: Cfgsync-mgr) 2026-03-30T05:40:51+00:00 %FILE_MGR-I-INFO: operation started: 'boot system image-2' (index: 4, origin: Cfgsync-mgr) 2026-03-30T05:40:51+00:00 %FILE_MGR-I-INFO: operation is finished: 'boot system image-2' (index: 4, origin: Cfgsync-mgr) 2026-03-30T05:40:53+00:00 %CLUSTER-I-SYNC_SYSTEM_INFO: system will be rebooted to apply all changes |
После перезагрузки второго юнита проверьте статус кластера:
vesbc-slave# show cluster status Unit Hostname Role MAC address State IP address ---- -------------------- ---------- ----------------- -------------- --------------- 1 vesbc-master Active aa:00:00:03:90:00 Joined 192.168.16.10 2* vesbc-slave Standby aa:00:00:04:10:00 Joined 192.168.16.20 vesbc-slave# show cluster sync status System part Synced ---------------------- ------ candidate-config Yes running-config Yes SW version Yes licence Yes licence (After reboot) Yes date Yes E-SBC version Yes |
Только для vESBC. При подключении второго юнита vESBC с использованием ZTP, синхронизация программного обеспечения и конфигурации занимает до 30 минут, т. к. без лицензии vESBC имеет ограничение скорости полосы пропускания в 1 Мбит/с. |