MariaDB Galera Cluster с контейнерами Docker - узлы не присоединяются к кластеру инициализации - PullRequest
0 голосов
/ 27 июня 2018

Я хочу установить кластер Galera с тремя узлами, все на разных хостах. Первый запускается нормально, и кластер готов, но присоединиться к нему могут только собственные установки MariaDB, а контейнеры Docker - нет. Странно, что нативные узлы могут присоединяться, тогда как мои контейнеры, похоже, просто игнорируют это.

Журналы первого узла: http://txt.do/dzjy7

Журналы второго узла: http://txt.do/dzjyy

Первый узел запускается с:

sudo docker run \
--name mariadb-0 \
-d \
-v mysql.conf.d:/etc/mysql/conf.d \
-v mysql:/var/lib/mysql \
-e MYSQL_INITDB_SKIP_TZINFO=yes \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-p 3306:3306 \
-p 4567:4567/udp \
-p 4567-4568:4567-4568 \
-p 4444:4444 \
mariadb:latest \
--wsrep-new-cluster \
--wsrep_node_address=$(ip -4 addr ls eth0 | awk '/inet / {print $2}' | cut -d"/" -f1)

Дополнительные узлы запускаются практически так же:

sudo docker run \
--name mariadb-0 \
-d \
-v mysql.conf.d:/etc/mysql/conf.d \
-v mysql:/var/lib/mysql \
-e MYSQL_INITDB_SKIP_TZINFO=yes \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-p 3306:3306 \
-p 4567:4567/udp \
-p 4567-4568:4567-4568 \
-p 4444:4444 \
mariadb:latest \
--wsrep_node_address=$(ip -4 addr ls eth0 | awk '/inet / {print $2}' | cut -d"/" -f1)

Каждый узел использует этот конфигурационный файл server.conf:

[server]
bind-address=0.0.0.0
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
innodb_doublewrite=1
innodb_locks_unsafe_for_binlog=1
query_cache_size=0
query_cache_type=0

[galera]
wsrep_on=ON
wsrep_provider="/usr/lib/galera/libgalera_smm.so"
wsrep_cluster_address="gcomm://XXX.XXX.XXX.XXX,YYYY.YYYY.YYYY.YYYY,ZZZZ.ZZZZ.ZZZZ.ZZZZ"
wsrep-sst-method=rsync
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...