...
Выбор схемы резервирования зависит от первоначальных требований клиента и количества ТД которые будут использоваться. Всего предоставляется 2-а варианта настройки схемы с резервированием.
- с резервированием SoftWLC при помощи ProxySQL + Galera Cluster на Ubuntu 22.04
- Схема резервирования 1+1
Далее более подробно разберем какая схема больше подходит под определенные условию
Схема с резервированием SoftWLC при помощи ProxySQL + Galera Cluster на Ubuntu 22.04
Описание
Обе схемы в качестве плагина для создания кластера используют Galera Cluster. Это Galera Cluster — это плагин к InnoDB, благодаря которому возможно создание синхронного мульти-мастер кластера MySQL. Он принципиально отличается от стандартной репликации MySQL и решает ряд проблем, включая конфликты при записи на нескольких узлах Master, проблему с отставанием репликации, которая ведет к рассинхронизации ведомых узлов с мастером. При использовании Galera, пользователям нет необходимости знать, на какой сервер будет производиться запись (Master), а с каких серверов можно будет читать (Slave), поскольку Galera предоставляет равнодоступный, как для записи, так и для чтения, кластер.
В кластере Galera приложение может выполнять запись на любой узел, а фиксации транзакций, или событий репликации на основе строк (RBR), применяются ко всем серверам посредством репликации на основе сертификации. Репликация на основе сертификации — это альтернативный подход к синхронной репликации базы данных с использованием методов группового взаимодействия и упорядочивания транзакций.Минимальный кластер Galera состоит из 3 узлов. Рекомендуется запускать кластер с нечетным количеством узлов, чтобы при возникновении проблем с применением транзакции на одном узле (например, из-за проблемы с сетью, или когда машина не отвечает на запросы), два других узла могли создать кворум (т.е. большинство) и продолжить выполнение транзакции
Далее более подробно разберем какая схема больше подходит под определенные условия.
Схема резервирования SoftWLC 1+1 в Docker при помощи Ansible
Описание
Схема резервирования SoftWLC 1+1 представляется 2 нодами active-active. Связь баз данных осуществляется при помощи ProxySQL+GaleraCluster.
Кому подходит данная схема?
Данная схема подходит большим эксплуатациям, для которых основными критериями в выборе схемы является защита от Split-Brain (сделать сноску что это такое Split-Brain возникает, когда один или несколько узлов кластера отключаются от других узлов, что приводит к образованию подкластеров. )эксплуатациям с малым количеством ТД (до 7000 ТД) и желающим иметь резервирование.
Минимальные требования
Для работы решения понадобятся пять виртуальных машин: 2 виртуальные машины (2 хоста SoftWLC развернутых автоматическим скриптом установщиком и 3 хоста для баз данных.
Минимальные требования для хостов с SoftWLC
).
- Операционная система
- Оперативная память не менее 10Гб
- CPU >= 2200MHz
- Память жесткого диска >= 35Gb
- Выход в Интернет
- Операционная система Ubuntu Server 20.04 LTS / Ubuntu Server 22.04 LTS / Ubuntu Server 24.04 LTS / Astra Linux Special Edition 1.7.4 (Воронеж)
Минимальные требования для хостов с БД
- Оперативная память не менее 32Гб
- CPU >= 2200MHz
- Память жесткого диска >= 35Gb
- Выход в Интернет
- Операционная система Ubuntu Server 20.04 LTS / Ubuntu Server 22.04 LTS / Astra Linux Special Edition 1.7.4 5 (Воронеж, Орел) / РЕД ОС Муром (7.3.1-7.3.3) / РЕД ОС 8
Количество устройств | название VM | CPU core, Xeon | RAM, Gb | HDD, Gb |
|---|---|---|---|---|
| от 10 до 200 ТД | SoftWLC | 4, 64-bit x86 CPUs | 16 | 200 |
| от 200 до 500 ТД | SoftWLC | 4, 64-bit x86 CPUs | 24 | 200 |
| от 500 до 7000 ТД | SoftWLC | 8, 64-bit x86 CPUs | 32 | 500 |
Преимущества и недостатки данной схемы
Преимущества:
- Данная схема предотвращает Split-Brain
- В данной схеме можно использовать больше 10 тысяч ТД
Недостатки:
- Сложность в обновлении
- Задействовано большое количество ресурсов
Принципиальная схема резервирования SoftWLC при помощи ProxySQL + Galera Cluster
- Легкость установки и администрирования
- Повышенная отказоустойчивость по сравнению с однохостовой установкой
Недостатки:
- Данная схема не предотвращает Split-Brain
- Необходимость в 2 хостах для установки
Принципиальная схема резервирования 1+1
SoftWLC и Ansible на одном хосте:
| draw.io Diagram | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
SoftWLC и Ansible на отдельном хосте:
draw.io Diagram border true diagramName Untitled Diagram-1770623795588 simpleViewer false width links auto tbstyle top lbox true diagramWidth 731 revision 1
Настройка данной схемы более подробно описана в инструкции: Резервирование SoftWLC при помощи ProxySQL + Galera Cluster на Ubuntu 22.04
Схема резервирования 1+1
Описание
Настройка схемы репликации SoftWLC 1+1+3 GaleraNodes в Docker при помощи Ansible
Схема репликации SoftWLC 1+1+3 GaleraNodes в Docker при помощи Ansible
Описание
Схема резервирования SoftWLC 1+1+3 GaleraNodes представляется мультихостовой установкой из 5 нод: 2 хоста SoftWLC и 3 хоста для баз данных. Связь баз данных осуществляется при помощи ProxySQL+GaleraClusterСхема 1+1 - это схема в которой реализована репликация MySQL с автоматическим позиционированием GTID, которая помогает обеспечить сохранность данных. GTID появился с MySQL 5.6 и представляет собой уникальный 128-битный глобальный идентификационный номер (SERVER_UUID), который увеличивается с каждой новой транзакцией. Классическая репликация MySQL без GTID использует позицию в бинарном логе. Но благодаря GTID больше не нужно разбираться с вычислениями позиции бинлога. Из преимуществ GTID является согласованность данных, т.е. на сервере (как на master, так и на slave) будет подтверждена одна и только одна транзакция с одним GTID, а любые другие транзакции, имеющие такой же UUID, будут проигнорированы.
Кому подходит данная схема?
Данная схема подходит эксплуатациям с малым количеством ТД (до 1000 ТД) и желающим иметь резервирование.
Минимальные требования
большим эксплуатациям, для которых основными критериями в выборе схемы является защита от Split-Brain (Split-Brain - критическое состояние в кластере, когда из-за потери связи между узлами (heartbeat) кластер разделяется на независимые части. Каждый узел или группа начинают считать себя единственными работающими, что приводит к конфликтам данных)
Минимальные требования
Для работы решения понадобятся 5 виртуальных машин: 2 хоста SoftWLC и 3 хоста для баз данных.
- Операционная система Ubuntu Server 20.04 LTS / Ubuntu Server 22.04 LTS / Ubuntu Server 24.04 LTS / Astra Linux Special Edition 1.7.4 / Astra Linux Special Edition 1.7.5 (Воронеж, Орел)
- 2 сервера с памятью и CPU в соответствие с количеством ТД :
- / РЕД ОС Муром (7.3.1-7.3.3) / РЕД ОС 8
Количество устройств
VM | CPU core, Xeon | RAM, Gb | HDD, Gb |
|---|
| Пакеты |
|---|
| SoftWLC |
| 8, 64-bit x86 CPUs |
| 32 | 500 | Однохостовая установка SoftWLC ProxySQL | ||
| SoftWLC | 8, 64-bit x86 CPUs | 32 | 500 | Однохостовая установка SoftWLC ProxySQL |
Database |
| 4, 64-bit x86 CPUs |
| 64 | 500 | openjdk-17-jdk | ||
Database | 4, 64-bit x86 CPUs | 64 | 500 | openjdk-17-jdk MariaDB (galera cluster) eltex-ems-db eltex-radius-db eltex-auth-service-db |
Database | 4, 64-bit x86 CPUs |
| 64 | 500 | openjdk-17-jdk MariaDB (galera cluster) eltex-ems-db eltex-radius-db eltex-auth-service-db |
Преимущества и недостатки данной схемы
Преимущества:
- Легкость установки и администрирования
- Благодаря использованию GTID и ProxySQL повышается отказоустойчивость
Недостатки:
- Данная схема не предотвращает Split-Brain
Принципиальная схема резервирования 1+1
Для настройки схемы с резервирования при наличии одного активного хоста воспользуйтесь инструкцией : Настройка резервирования в схеме 1+1
При первоначальной установке воспользуйтесь инструкцией : Установка схемы резервирования при помощи скрипта
- Данная схема предотвращает Split-Brain
- В данной схеме можно использовать до 17 тысяч ТД
Недостатки:
- Задействовано большое количество ресурсов
- Необходимость в 5 хостах для развёртывания
Принципиальные схемы репликации:
SoftWLC и Ansible на одном хосте:
Embed draw.io Diagram diagramName SoftWLC_Replication_5Nodes_Ansible_On_Same includedDiagram 1 width 794 pageId 643170628
SoftWLC и Ansible на отдельном хосте:
Embed draw.io Diagram diagramName SoftWLC_Replication_5_Nodes_Ansible_On_Other includedDiagram 1 width 821 pageId 636551507
Настройка данной схемы более подробно описана в инструкции: Настройка схемы репликации SoftWLC 1+1+3 GaleraNodes в Docker при помощи AnsibleЕсли имеются закрытый контур, то возможна аналогичная установка схемы резервирование в doсker.

