반응형
도커 컨테이너가 있는 MariaDB Galera 클러스터 - 노드가 클러스터에 가입하지 않음
저는 3개의 노드를 가진 Galera Cluster를 구축하고 싶습니다. 모두 다른 호스트에 있습니다.첫 번째 것은 정상적으로 시작되고 클러스터가 준비되지만 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
언급URL : https://stackoverflow.com/questions/51064184/mariadb-galera-cluster-with-docker-containers-nodes-do-not-join-init-cluster
반응형
'programing' 카테고리의 다른 글
템플릿 디렉터리 Timber/Twig 가져오기 (0) | 2023.09.14 |
---|---|
동적 데이터를 표시하기 위한 for loop 만들기 (0) | 2023.09.14 |
이 xmlns:layout xml 파일에서 이 행이 첫 번째여야 하는 이유는 무엇입니까? (0) | 2023.09.14 |
모든 열을 선택하지만 그 중 하나의 이름을 바꿉니다. (0) | 2023.09.14 |
공유 메모리를 사용하여 프로세스 간 세마포어를 공유하는 방법 (0) | 2023.09.14 |