본문으로 바로가기

Mariadb Clustering (With Galera) - Ubuntu

category MariaDB/MariaDB 이중화 2019. 7. 28. 13:00
728x90
  • OS : Ubuntu OS나 다른 Maraidb 버전을 사용하려면 https://downloads.mariadb.org/mariadb/repositories/#mirror=kaist의 설치 방법을 숙지.
  • Galera Cluster를 사용(Galera Cluster는 Mariadb 10.1 이상의 버전을 설치하면 자동으로 설치됨)
  • Mariadb 10.0 이하의 버전을 사용 할 때에는 별도로 Galera를 설치해야 함 (여기서는 명시하지 않음) 방화벽은 OFF 해야 함

방화벽 OFF

sudo ufw status
sudo ufw allow 3306,4568,4444,4567/tcp
sudo ufw allow 4567/udp

Mariadb 설치 방법 Repository 추가

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository
sudo apt update
sudo apt install mariadb-server

Galera Cluster 구성 첫번째 노드 구성

sudo systemctl stop mysql
sudo vim /etc/mysql/conf.d/galera.cnf

galera.cnf 파일

binlog_format=ROW 
default-storage-engine=innodb 
innodb_autoinc_lock_mode=2 
bind-address=0.0.0.0

Galera Provider Configuration

wsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so

 


Galera Synchronization Configuration

wsrep_cluster_name="test_cluster" 
wsrep_cluster_address="gcomm://10.0.2.101,10.0.2.102,10.0.3.103"

 

wsrep_sst_method=rsync

 


Galera Node Configuration

wsrep_node_address="10.0.2.101" 
wsrep_node_name="cluster1"

다음과 같이 실행하면 됨

sudo systemctl start mysql --wsrep-new_cluster

또는 sudo galera_new_cluster *위의 방법으로 서비스가 동작하지 않을 때

mysqld_safe --wresp-new-cluter &

로 실행 후 모든 node가 접속 했을 때

pkill -9 mysqld
systemctl start mysql

실행해주면 됨

 

정상적으로 연결 된 것을 확인하는 방법

mysql -u root -p -e "SHOW STATUS LIKE 'wsrep_cluster_size'"
+--------------------+-------+ | Variable_name | Value | +--------------------+-------+ | wsrep_cluster_size | 1 | +--------------------+-------+

이후 노드

sudo systemctl stop mysql sudo vim /etc/mysql/conf.d/galera.cnf
/etc/mysql/conf.d/galera.cnf

 

wsrep_node_address="10.0.2.102" 
wsrep_node_name="cluster2"

'MariaDB > MariaDB 이중화' 카테고리의 다른 글

Mariadb Maxscale  (0) 2019.07.19
Redis  (0) 2019.07.19
Sentinel  (0) 2019.07.19