Bug 43918

Summary: Не запускается MariaDB Galera Cluster
Product: Sisyphus Reporter: Кирилл <cki>
Component: mariadb-server-galeraAssignee: Alexei Takaseev <taf>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: boguslavskijbj, shaba
Version: unstable   
Hardware: x86_64   
OS: Linux   
Attachments:
Description Flags
Лог базы данных none

Description Кирилл 2022-10-02 10:03:45 MSK
Добрый день, прошу пожалуйста помочь со следующей проблемой по настройке MariaDB Galera Cluster. Почему-то не подтягивается библиотека libgalera_smm.so.

[root@ALT-SQL-01 lib64]# mariadb -V
mariadb  Ver 15.1 Distrib 10.6.9-MariaDB, for Linux (x86_64) using readline 5.1

[root@ALT-SQL-01 lib64]# apt-cache show libgalera_smm | grep Version
Version: 26.4.12-alt1:sisyphus+306701.100.1.2@1663117913

Настройки /etc/my.cnf.d/galera.cnf следующие:
[mysqld]
binlog_format=ROW
default-storage-engine=innodb
innodb_autoinc_lock_mode=2
bind-address=0.0.0.0
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name="galera_cluster"
wsrep_cluster_address="gcomm://10.10.10.53,10.10.10.54,10.10.10.55"
wsrep_sst_method=rsync
wsrep_node_address="10.10.10.53"
wsrep_node_name="alt-sql-01"

При попытки инициализации кластера командой galera_new_cluster выходит ошибка:
[root@ALT-SQL-01 lib64]# cat /var/lib/mysql/log/mysqld.log
2022-10-02  6:26:30 0 [Note] Plugin 'InnoDB' is disabled.
2022-10-02  6:26:30 0 [Note] Plugin 'FEEDBACK' is disabled.
2022-10-02  6:26:30 0 [Note] WSREP: Loading provider /usr/lib64/galera/libgalera_smm.so initial position: 00000000-0000-0000-0000-000000000000:-1
2022-10-02  6:26:30 0 [Note] WSREP: wsrep_load(): loading provider library '/usr/lib64/galera/libgalera_smm.so'
2022-10-02  6:26:30 0 [ERROR] WSREP: wsrep_load(): dlopen(): /usr/lib64/galera/libgalera_smm.so: cannot open shared object file: No such file or directory
2022-10-02  6:26:30 0 [ERROR] WSREP: Failed to create a new provider '/usr/lib64/galera/libgalera_smm.so' with options '': Failed to load wsrep library
2022-10-02  6:26:30 0 [ERROR] WSREP: Failed to load provider
2022-10-02  6:26:30 0 [ERROR] Aborting
Warning: Memory not freed: 280

[root@ALT-SQL-01 /]# find / -name libgalera_smm.so
/usr/lib64/galera/libgalera_smm.so
[root@ALT-SQL-01 /]# ls -l /usr/lib64/galera/libgalera_smm.so
-rwxrwxrwx 1 root root 1762200 авг  8 11:30 /usr/lib64/galera/libgalera_smm.so

Дополнительные опции wsrep_provider_options не использовал. Файл на месте, пробовал перемещать\подкладывать других версий файл. Ничего не помогло. Подскажите, пожалуйста, как решить проблему?
Comment 1 Богдан Богуславский 2024-09-10 15:36:05 MSK
Created attachment 16816 [details]
Лог базы данных
Comment 2 Богдан Богуславский 2024-09-10 15:37:18 MSK
Стенды:
ALT Server Office 10.2 (обновленный до Sisyphus)

Версия пакетов:
mariadb-server-galera-11.4.3-alt1.x86_64
galera-garbd-26.4.19-alt1.x86_64
mariadb-11.4.3-alt1.x86_64 

Условия:
1. Для воспроизведения необходимо три системы

2. На каждой системе в файле /etc/hosts дописать:
<ip 1-ой системы>    nodea
<ip 2-ой системы>    nodeb
<ip 3-ей системы>    garbd

3. На первую и вторую систему установить mariadb-server-galera, libgalera_smm, rsync:
# apt-get install mariadb-server-galera libgalera_smm rsync

4. На третью систему установить galera-garbd, mariadb, rsync:
# apt-get install galera-garbd mariadb rsync

5. На каждой системе выполнить:
# control mysqld-chroot disabled

Шаги воспроизведения:
1. На первой системе в файле /etc/my.cnf.d/galera.cnf отредактировать следующие параметры:
wsrep_cluster_name="my_wsrep_cluster"
wsrep_cluster_address="gcomm://<ip_первой_ноды,ip_второй_ноды,ip_третьей_ноды>"
wsrep_node_name="<имя_данной_ноды>"
wsrep_node_address="<ip_данной_ноды>"

2. На второй системе в файле /etc/my.cnf.d/galera.cnf отредактировать следующие параметры:
wsrep_cluster_name="my_wsrep_cluster"
wsrep_cluster_address="gcomm://<ip_первой_ноды,ip_третьей_ноды>"
wsrep_node_name="<имя_данной_ноды>"
wsrep_node_address="<ip_данной_ноды>"

3. На каждой системе убедиться в том, что сервис mariadb не запущен (# systemctl status mariadb) и если запущен, то остановить командой: # systemctl stop mariadb

4. На первой системе создать новый кластер: # galera_new_cluster

5. Проверить статус сервиса mariadb: # systemctl status mariadb

Ожидаемый результат:
Сервис mariadb успешно запущен

Реальный результат:
Запуск сервиса mariadb провален
Comment 3 Repository Robot 2024-09-17 19:57:37 MSK
mariadb-11.4.3-alt2 -> sisyphus:

 Tue Sep 17 2024 Alexei Takaseev <taf@altlinux> 11.4.3-alt2
 - Fix wsrep-API version (ALT #43918)