안녕하세요.
쉽게 시작하는 비즈니스 토탈IT, 아이티이지 입니다.

지난 포스팅에서 ‘DB 이중화 Replication 설정 방법’에 대해서 말씀드렸었는데요.
오늘은 ‘Galera Cluster 설정 방법’에 대해 알아보도록 하겠습니다.

이번 기술 포스트도 도움이 되시길 바랍니다!

🔎 Galera Cluster란?

갈레라 클러스(Galera Cluster)란, MariaDB에서 제공하는 오픈소스 이중화 솔루션을 말합니다.
서버는 최소 2대부터 구성이 가능하며 권장하는 노드 수는 3대 이상입니다.

다중 Master구성과 Active-Active방식이고, 각 노드간 Read/Write가 자유롭게 가능합니다.
각 노드간 wsrep API를 이용하여 통신이 이루어지며, 4444, 4567포트를 통해 데이터의 동기화가
이루어집니다. 해당 솔루션은 MariaDB 5.5 이상 버전과 InnoDB엔진에서만 사용이 가능합니다.

아래 그림은 Galera Cluster 동작 구성도 입니다.
4567포트를 통해 각 노드의 연동 상태를 체크하고, 멀티캐스트 복제 시
해당 포트에서 UDP 전송과 TCP를 모두 사용합니다.


4444포트는 SST포트이며, 노드간 데이터 동기화 시 사용되는 포트 입니다.
동기화 방식은 mysqldump, rsync, xtrabackup 방식이고,
DBMS의 버전에 따라 동기화 방식의 제한을 받을 수 있습니다.

▶ 이중화 구성 방법
[Galera Cluster 구성 정보]
– 서버 : Node1(10.10.30.31), Node2(10.10.30.32), Node3(10.10.30.33)
– DB : iteasy
– DB계정 : iteasy
– 동기화 sst계정 : repl, PW: 1234
 
[Galera Cluster 설정 정보]
wsrep_provider=/usr/lib64/galera3/libgalera_smm.so
→ 갈레라 클러스터 라이브러리 파일 경로이며 해당 경로는 디폴트 경로이다.
wsrep_cluster_name=galera_cluster
→ 클러스터의 이름이며, 해당 이름의 클러스터끼리만 데이터가 동기화된다.
wsrep_cluster_address=gcomm://
→ 갈레라 클러스터에 연결되는 노드들의 IP를 입력하여 설정한다.
wsrep_node_name=node1
→ 노드의 이름을 설정한다.
wsrep_node_address=192.168.70.61
→ 노드의 IP를 설정한다.
wsrep_sst_method=xtrabackup-v2
→ 동기화 방식을 설정한다.
wsrep_sst_auth=sstuser:passw0rd
→ 데이터 동기화에 사용할 계정정보이다.
default_storage_engine=InnoDB
→ InnoDB엔진에서만 갈레라 클러스터 기능을 이용할 수 있어 필수로 DB엔진을 설정한다.

[구성 방법]
– Node1_10.10.30.31
1) My.cnf에 갈레라 설정 추가

2) Galera Cluster 실행
[root@node1 ~]# galera_new_cluster

3) 데이터 동기화를 위해 sst계정 생성 및 권한부여
MariaDB [mysql]> grant all privileges on *.* to repl@’%’ identified by ‘1234’;
MariaDB [mysql]> flush privileges;

– Node2_10.10.30.32
1) My.cnf에 갈레라 설정 추가

2) MariaDB 실행
[root@node2 ~]# systemctl start mariadb


– Node3_10.10.30.33
1) My.cnf에 갈레라 설정 추가

2) MariaDB 실행
[root@node3 ~]# systemctl start mariadb


– Galera Cluster 구성 정상적용 확인
1) Node1
MariaDB [(none)]>  show global status like ‘wsrep_%’;

오늘 말씀드린 Galera Cluster 설정 방법! 어떠셨나요!?
앞으로도 유용한 정보들에 대해서 말씀드릴테니! 기대해주세요!

다음 기술 블로그에서도 알찬 정보를 알려드릴게요!
추가로 궁금하신 내용이 있으시다면, 언제든지 문의해주세요!😊🙏
🏠홈페이지 바로가기
📝서비스 문의하기

아이티이지 기술 블로그를 방문해 주셔서 감사합니다.
IT is easy, ITEASY💙

댓글 남기기