[MariaDB] Galera 클러스터 구축2: MariaDB 10.6 3대 설치

 레드햇 8.8의 경우에도 MariaDB 10.3과 10.5 버전이 제공됩니다. 본 문서에서는 버전을 한단계 더 올려서 10.6으로 레드햇 제공하는 제품이 아닌 MariaDB 공식 사이트에서 제공하는 버전을 이용해서 설치해 보도록 하겠습니다.


사전 준비

세 개의 노드(mariadb1, mariadb2, mariadb3)가 준비되어 있어야 합니다.


1. Mariadb 저장소 추가

Mariadb 공식 웹사이트에서는 버전별 저장소 설정 방법을 제공합니다.

레포주소 참고 사이트

아래와 같이 /etc/yum.repos.d/MariaDB.repo 파일을 생성하고 내용을 추가합니다.

# vi /etc/yum.repos.d/MariaDB.repo

# MariaDB 10.6 RedHatEnterpriseLinux repository list - created 2025-06-11 14:02 UTC
# <https://mariadb.org/download/>
[mariadb]
name = MariaDB
# rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See <https://mariadb.org/mirrorbits/> for details.
# baseurl = <https://rpm.mariadb.org/10.6/rhel/$releasever/$basearch>
baseurl = <https://tw1.mirror.blendbyte.net/mariadb/yum/10.6/rhel/$releasever/$basearch>
module_hotfixes = 1
# gpgkey = <https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB>
gpgkey = <https://tw1.mirror.blendbyte.net/mariadb/yum/RPM-GPG-KEY-MariaDB>
gpgcheck = 1

이 파일은 세 개의 노드에 모두 동일하게 적용되어야 합니다. 한 서버에서 설정한 후 다른 서버로 복사해도 무방합니다.

# scp /etc/yum.repos.d/MariaDB.repo root@gdb02:/etc/yum.repos.d/
# scp /etc/yum.repos.d/MariaDB.repo root@gdb03:/etc/yum.repos.d/

레포 설정이 잘 되었는지 확인합니다.

# yum repolist -v
...
Repo-id            : mariadb
Repo-name          : MariaDB
Repo-revision      : 1746046743
Repo-updated       : Thu 01 May 2025 05:59:17 AM KST
Repo-pkgs          : 102
Repo-available-pkgs: 102
Repo-size          : 2.4 G
Repo-baseurl       : <https://tw1.mirror.blendbyte.net/mariadb/yum/10.6/rhel/8/x86_64>
Repo-expire        : 172,800 second(s) (last: Wed 11 Jun 2025 11:06:21 PM KST)
Repo-filename      : /etc/yum.repos.d/MariaDB.repo
Total packages: 8,728

2. Mariadb 패키지 설치

레드햇의 경우 패키지 설치를 위해 기본적으로 localrepo설정이 되어 있어야 합니다. CentOS 처럼 처음부터 설정이 되어있지 않기 때문에 아래 localrepo설정을 참고하여 먼저 진행하시기 바랍니다.

localrepo 설정

각 노드에서 아래 명령어를 실행해 Mariadb 관련 패키지를 설치합니다.

# yum install MariaDB-server MariaDB-client MariaDB-common -y

설치 중에는 GPG 키 확인 메시지가 표시되며, 이에 동의해야 설치가 계속됩니다.

Is this ok [y/d/N]: y
Importing GPG key: <https://yum.mariadb.org/RPM-GPG-KEY-MariaDB>
Is this ok [y/N]: y

3. 설치 확인

설치가 완료되면 아래 명령어로 설치된 버전을 확인할 수 있습니다.

[root@mariadb1 ~]# mysql --version
mysql  Ver 15.1 Distrib 10.6.22-MariaDB, for Linux (x86_64) using readline 5.1

[root@mariadb2 ~]# mysql --version
mysql  Ver 15.1 Distrib 10.6.22-MariaDB, for Linux (x86_64) using readline 5.1

[root@mariadb3 ~]# mysql --version
mysql  Ver 15.1 Distrib 10.6.22-MariaDB, for Linux (x86_64) using readline 5.1

모든 노드(mariadb1, mariadb2, mariadb3)에 대해 위 절차를 완료하면 Mariadb 10.6 환경 구성이 완료됩니다.


4. 단일 노드에서 초기 보안 설정

MariaDB 설치 이후에는 보안상 최소한의 초기 설정이 필요합니다. 하지만 Galera 클러스터에서는 이 설정을 한 노드에서만 수행해야 하며, 다른 노드에서는 설정하지 않아야 합니다. 일반적으로 첫 번째 노드(mariadb1)에서 수행합니다.

Mariadb 서비스 시작

설정 작업을 진행할 노드에서 먼저 mariadb 서비스를 시작합니다.

[root@mariadb1 ~]# systemctl start mariadb
[root@mariadb1 ~]# systemctl status mariadb
● mariadb.service - MariaDB 10.6.22 database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/mariadb.service.d
           └─migrated-from-my.cnf-settings.conf
   Active: active (running) since Wed 2025-06-11 23:45:37 KST; 4s ago
     Docs: man:mariadbd(8)
           <https://mariadb.com/kb/en/library/systemd/>
...

보안 설정 스크립트 실행

MariaDB 10.5 이상에서는 아래 명령어로 실행합니다.

mariadb-secure-installation

이후 다음과 같은 프롬프트가 출력됩니다. 보안 설정 예시는 다음과 같이 구성할 수 있습니다.

[root@mariadb1 ~]# mariadb-secure-installation
...
Enter current password for root (enter for none):
...
Switch to unix_socket authentication [Y/n] n
...
Change the root password? [Y/n] y
New password: <password 입력>
Re-enter new password: <password 입력>
Password updated successfully!
...
Remove anonymous users? [Y/n] y
...
Disallow root login remotely? [Y/n] y
...
Remove test database and access to it? [Y/n] y
...
Reload privilege tables now? [Y/n] y
...
Thanks for using MariaDB!

설정 요약:

  • 루트 비밀번호 설정: 클러스터 전용 계정 운영을 위해 설정
  • 익명 사용자 제거: 불필요한 접근 차단
  • 원격 루트 로그인 금지: 보안 강화
  • 테스트 DB 제거: 실제 운영에는 불필요
  • 권한 테이블 재적용: 변경사항 즉시 반영

⚠️ 주의: 이 보안 설정은 클러스터 구성 전 단계이므로 하나의 노드에서만 수행합니다. 나머지 노드에서 같은 작업을 반복하면 클러스터 복제에 문제가 발생할 수 있습니다.

마무리

이번 작업에서는 RHEL 기본 저장소 대신 MariaDB 공식 저장소를 통해 최신 10.6 버전을 설치했습니다. 저장소 설정 파일에 오타가 있는 경우 설치가 실패하므로, 구성 시 GPG 설정 항목이 올바르게 구분되어 있는지 꼭 확인해야 합니다. 설치 후에는 서버 간 버전이 일치하는지도 점검해 두는 것이 좋습니다.

댓글

이 블로그의 인기 게시물

[Linux] RHEL Local YUM Repository 구성

[Linux Command] sudo command 설명

[Ansible Modules] Fetch module 설명 및 활용