Galera Cluster — це синхронна мультимайстерна реплікація для MariaDB і MySQL, яка забезпечує високу доступність і відмовостійкість бази даних.
Переваги Galera Cluster
-
Синхронна реплікація — дані записуються одночасно на всіх вузлах.
-
Мультимайстерна архітектура — можна виконувати записи на будь-якому вузлі.
-
Автоматичне відновлення вузлів — нові вузли можуть автоматично підключатися до кластера.
-
Висока доступність — у разі виходу з ладу одного вузла кластер продовжує працювати.
-
Низькі затримки реплікації — всі зміни застосовуються миттєво.
Вимоги до налаштування
-
Три або більше сервери (рекомендується 3+ для надійності).
-
Операційна система: Ubuntu 22.04 / Debian 11 / CentOS 8.
-
Встановлений MariaDB (версія 10.5 або новіша).
-
Відкриті порти:
3306
,4567
,4568
,4444
.
Крок 1: Встановлення MariaDB
На всіх вузлах виконайте:
sudo apt update && sudo apt install mariadb-server -y
Або для CentOS/RHEL:
sudo dnf install mariadb-server -y
Крок 2: Налаштування конфігурації Galera
Відредагуйте файл /etc/mysql/mariadb.conf.d/50-server.cnf
(для Ubuntu/Debian) або /etc/my.cnf.d/server.cnf
(для CentOS/RHEL) на кожному вузлі.
Основні параметри конфігурації
[mysqld]
bind-address=0.0.0.0
galera_cluster_name="my_cluster"
galera_node_address="NODE_IP"
galera_gcache_size=512M
galera_replication_threads=4
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
binlog_format=ROW
wsrep_on=ON
wsrep_provider=/usr/lib/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.1.1,192.168.1.2,192.168.1.3"
wsrep_sst_method=rsync
Змініть NODE_IP
та wsrep_cluster_address
відповідно до IP-адрес ваших серверів.
Крок 3: Запуск першого вузла (Primary)
На першому сервері виконайте команду:
sudo systemctl stop mariadb
sudo galera_new_cluster
sudo systemctl start mariadb
Переконайтеся, що кластер працює:
mysql -u root -e "SHOW STATUS LIKE 'wsrep_cluster_size';"
Крок 4: Додавання інших вузлів
На всіх інших серверах виконайте:
sudo systemctl stop mariadb
sudo systemctl start mariadb
Переконайтеся, що вузли приєдналися:
mysql -u root -e "SHOW STATUS LIKE 'wsrep_cluster_size';"
Крок 5: Перевірка реплікації
Створіть тестову базу даних на будь-якому вузлі:
CREATE DATABASE test_db;
Переконайтеся, що вона доступна на інших вузлах:
SHOW DATABASES;
Висновок
MariaDB Galera Cluster забезпечує високу доступність, стійкість до збоїв і синхронну реплікацію без втрати даних. Використовуючи цю інструкцію, ви зможете налаштувати та запустити власний кластер бази даних.
Ще немає коментарів.
Авторизуйтесь, щоб залишити коментар.