Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 51 Следующий »

Кластер организуется из двух одинаковых устройств. Работает в режиме 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

Схема:

Первичная настройка кластера

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

После включения устройства примените конфигурацию по умолчанию на устройствах, предназначенных для объединения в кластер:

ESBC-1
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-1
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
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 настроен удаленный доступ и у него меняется номер юнита, необходимо до перезагрузки настроить ip-интерфейсы для нового юнита аналогично текущим.

В заводской конфигурации ESBC-3200 присутствуют настройки интерфейсов только для юнита по умолчанию (unit = 1).
При копировании и применении заводской конфигурации настройка номера юнита не изменяется на значение по умолчанию.
Установить номер юнита по умолчанию возможно следующими способами:
1. используя консольное подключение;
2. зажав функциональную кнопку "F" на 15 секунд.

Убедитесь в том, что настройки юнитов применились успешно: 

ESBC-1
ESBC-1# show unit id
Unit ID is 1
Unit ID will be 1 after reboot

Объединение устройств в кластер невозможно, если они относятся к одному и тому же юниту.
Исключение — процесс ZTP, так как в процессе ZTP нужный unit у устройства выставится автоматически.

Настройка внешних сетевых интерфейсов

На обоих устройствах необходимо настроить IP-адрес и VRRP на внешних интерфейсах. В текущей схеме это интерфейсы twe1/0/7 и twe2/0/7.

ESBC-1
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-интерфейсе можно назначить разные приоритеты для разных юнитов.

ESR-1
ESBC-1(config-vrrp)# priority 254 unit 1
ESBC-1(config-vrrp)# priority 253 unit 2


Допускается использование IP-адреса VRRP из подсети, отличной от подсети физического интерфейса.

Настройка кластерного интерфейса

Для полноценной работы кластера требуется сконфигурировать кластерный интерфейс, который будет использоваться для передачи control plane трафика. В качестве кластерного интерфейса назначен bridge. В качестве механизма, отвечающего за определение ролей устройств, участвующих в резервировании, назначен протокол VRRP. Настройки cluster-интерфейса должны быть идентичны для всех участников кластера.

Так как кластер выполняет синхронизацию состояний между устройствами, необходимо создать зону безопасности SYNC (synchronization):

ESBC-1
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
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
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
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
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
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
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
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.  

Пример настройки crypto-sync

Задача:

Использовать сертификаты CA.pem, CERT.pem и приватный ключ PRIVATE_KEY.key в конфигурации криптопрофиля ESBC.

Решение:

  1. После описанной выше настройки кластера, настройте ip failover:
    • Создайте две object-group, укажите в них IP-адреса кластерных интерфейсов обоих юнитов:
      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)# 
    • Настройте ip failover:
      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)# 
  2. Включите синхронизацию файлов crypto и примените настройки:
    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
  3. Загрузите сертификаты и приватный ключ на мастер, используя, например, tftp:
    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

Пример настройки кластера vESBC в гипервизоре VirtualBox

Задача:

Развернуть кластер из двух vESBC в среде виртуализации VirtualBox 7.1.0.

Схема:

Решение:
  1. Создайте виртуальную машину в VirtualBox, подробно описано в разделе Создание виртуальных машин Руководства по установке vESBC в среде виртуализации VirtualBox.
  2. Установите vESBC, подробно описано в разделе Установка vESBC в системе виртуализации VirtualBox.
  3. Настройте сетевые интерфейсы:
    • Настройка внешнего интерфейса(ов):
      • Перейдите в настройки виртуальной машины, на которой установлен vESBC.
      • Откройте меню "Сеть" и перейдите к настройкам "Адаптер 1".
      • Включите сетевой интерфейс.
      • Выберите тип подключения "Сетевой мост".
      • Выберите, через какой физический интерфейс хостовой системы будет происходить подключение.
      • Выберите тип адаптера "Intel PRO/1000MT Server (82545EM)".
      • Выберите "Неразборчивый режим: Разрешить всё".
    • Настройка кластерного интерфейса:
      • Перейдите к настройкам второго интерфейса "Адаптер 2".
      • Включите сетевой интерфейс.
      • Выберите тип подключения "Внутренняя сеть".
      • Укажите имя сети (по умолчанию intnet). При настройке второй виртуальной машины. 
      • Выберите тип адаптера "Паравитуальная сеть (virtio-net)".
      • Выберите "Неразборчивый режим: Разрешить всё".
    • Нажмите кнопку "OK"
  4. Выполните пункты 1-3 для второй виртуальной машины vESBC.

После успешного выполнения описанных пунктов можно приступать к настройке юнитов кластера vESBC, алгоритм настройки полностью аналогичен настройке ESBC-3200 и описан в разделе Первичная настройка кластера, за исключением конфигурации второго юнита с помощью ZTP. 

Для объединения в кластер vESBC предварительно необходимо сделать разные системные MAC-адреса на устройствах путем смены серийного номера.

Пример настройки кластера vESBC в гипервизоре QEMU/KVM

Задача:

Развернуть кластер из двух vESBC в среде виртуализации QEMU/KVM на базе ОС Ubuntu 20.04.6 TLS.

Схема:

Решение:
  1. Создайте виртуальную машину в QEMU/KVM и установите vESBC удобным для Вас способом. Подробное описание создания виртуальной машины и процесс установки vESBC приведены в разделе документации Установка vESBC в системе виртуализации QEMU/KVM.
  2. Настройте сетевые интерфейсы:
    • Настройка внешнего интерфейса(ов):
      • Подключите сетевой интерфейс к виртуальной машине в одном из режимов, описанных в документации.

        Не используйте режим интерфейса macvtap при организации каластера vESBC, т. к. при использовании протокола VRRP MAC-адрес vESBC будет отличаться отMAC-адреса сетевого интерфейса, и трафик не будет передаваться в виртуальную машину из-за особенностей реализации драйвера macvtap.

    • Настройка кластерного интерфейса:
      • Подключение кластерного интерфейса осуществляется аналогично с внешним интерфейсом. Для организации кластерного соединения двух vESBC можно использовать изолированный бридж хоста (без привязки физического интерфейса).
  3. Выполните пункты 1-2 для второй виртуальной машины vESBC.

После успешного выполнения описанных пунктов можно приступать к настройке юнитов кластера vESBC, алгоритм настройки полностью аналогичен настройке ESBC-3200 и описан в разделе Первичная настройка кластера, за исключением конфигурации второго юнита с помощью ZTP. 

Для объединения в кластер vESBC предварительно необходимо сделать разные системные MAC-адреса на устройствах путем смены серийного номера.

Подключение второго юнита в кластере vESBC с использованием ZTP

Для активации процесса ZTP необходимо на втором устройстве vESBC запустить dhcp-client на bridge-интерфейсе, логический или физический интерфейс которого будет включен в кластерный интерфейс первого устройства.

В процессе ZTP устройство автоматически выставит себе:

1) Конфигурацию;

2) Юнит;

3) Версию ПО, на котором работает Active ESBC;

4) Лицензию, если она предварительно загружена на Active ESBC.

Алгоритм подключения vESBC с использованием ZTP:

  1. Обеспечить сетевую связность (L2) обоих виртуальных машин между собой по всем интерфейсам.
  2. Настроить первый юнит по алгоритму Первичная настройка кластера.
  3. На втором юните установить конфигурацию по умолчанию и убедиться, что юнит имеет ID 1:
    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 
  4. Перевести в режим switchport интерфейс, включенный в кластерный интерфейс первого юнита:
    vesbc(config)# interface gigabitethernet 1/0/2
    vesbc(config-if-gi)# mode switchport 
    vesbc(config-if-gi)# exit
  5. В настройках bridge включить DHCP-клиент:
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      


  • Нет меток