MySQL 복제(MMM, MHA)를 사용한 고가용성 및 장애 복구 솔루션
MySQL 복제를 통한 고가용성 및 장애 조치 솔루션은 MySQL 서버를 사용하는 많은 회사에 필수적입니다.
이러한 솔루션을 구성하는 방법을 알아보고 대표적인 MMM(Multi-Master Replication Manager) 및 MHA(Master High Availability) 솔루션을 자세히 살펴보겠습니다.
MySQL 복제를 통한 고가용성 및 장애 복구
MySQL 복제는 MySQL 서버에서 데이터를 복제하는 기술입니다.
이를 통해 복제 및 저장을 위해 마스터 데이터베이스에 대한 변경 사항을 하나 이상의 슬레이브 데이터베이스로 보낼 수 있습니다.
이를 통해 여러 서버에서 데이터를 공유할 수 있으므로 애플리케이션 가용성과 확장성이 향상됩니다.
MySQL 복제로 고가용성 및 장애 조치 솔루션을 구성하는 방법.
- 마스터-슬레이브 구성에서는 마스터 서버와 슬레이브 서버가 구성됩니다.
마스터 서버의 데이터 변경 사항은 슬레이브 서버에 복제됩니다. - 마스터-마스터 구성에서는 마스터 서버 간에 데이터가 동시에 변경되고 변경 사항이 서로 복제됩니다.
- 각 서버는 MySQL 복제를 설정하여 데이터를 복제합니다.
- 서버 간 통신이 두절되거나 마스터 서버에 장애가 발생하면 자동으로 다른 서버로 전환되도록 설정합니다.
- 선택적으로 SSH 또는 다른 보안 연결을 통한 데이터 통신을 암호화합니다.
위의 구성으로 고가용성 및 장애 조치 솔루션을 MySQL 복제로 구성할 수 있습니다.
다중 마스터 복제 관리자(MMM)
MMM은 MySQL의 다중 마스터 복제 구성에 사용되는 고가용성 및 장애 복구 솔루션입니다.
MMM은 마스터 서버의 장애를 감지하고 자동으로 다른 마스터 서버로 전환합니다.
또한 마스터 서버에 자동으로 다시 연결하여 새 데이터베이스 변경 사항을 적용하는 기능도 제공합니다.
MMM을 구성하는 방법.
- MMM 패키지를 설치합니다.
- 마스터 서버에서 MMM을 설정합니다.
이렇게 하려면 /etc/mysql/debian.cnf 파일에 설정을 추가하고 MMM 구성 파일인 /etc/mysql/mmm/mmm_common.conf 파일을 수정합니다. - 슬레이브 서버에서 MMM을 설정합니다.
이렇게 하려면 /etc/mysql/debian.cnf 파일에 설정을 추가하고 MMM 구성 파일인 /etc/mysql/mmm/mmm_common.conf 파일을 수정합니다. - 마스터 및 슬레이브 서버에서 MySQL 복제를 설정합니다.
- MMM의 상태를 확인하고 필요한 경우 서버를 수동으로 변경하십시오.
- MMM 로그 파일 및 데이터베이스를 백업하고 복원하는 데 필요한 스크립트를 만듭니다.
마스터 고가용성(MHA)
MHA는 MySQL의 마스터-슬레이브 구성에 사용되는 고가용성 및 장애 복구 솔루션입니다.
MHA는 마스터 서버의 장애를 감지하고 자동으로 다른 마스터 서버로 전환합니다.
또한 마스터 서버에 자동으로 다시 연결하여 새 데이터베이스 변경 사항을 적용하는 기능도 제공합니다.
MHA를 구성하는 방법.
- MHA 패키지를 설치합니다.
- 마스터 및 슬레이브 서버에서 MySQL 복제를 설정합니다.
- MHA 구성 파일 /etc/app1.cnf를 수정합니다.
이 파일에서 마스터 및 슬레이브 서버 IP 주소, SSH 자격 증명, 데이터베이스 사용자 및 암호 등을 설정합니다. - MHA 관리자를 시작합니다.
이렇게 하려면 /usr/share/doc/mha-*/samples/manager/ 구성 파일을 /etc/mha_manager.conf에 복사하고 필요한 설정을 변경합니다. - MHA의 상태를 확인하고 필요한 경우 수동으로 서버를 전환합니다.
졸업 증서
MySQL 복제를 통한 고가용성 및 장애 조치 솔루션은 MySQL 서버를 사용하는 회사에 매우 중요한 요소입니다.
MMM 및 MHA는 MySQL 복제로 고가용성 및 장애 조치 솔루션을 구성하는 데 매우 유용한 도구입니다.
이러한 도구를 사용하여 MySQL 서버의 가용성과 확장성을 개선할 수 있습니다.
참조 URL
– MHA 아키텍처 기반의 MySQL 고가용성 스위칭 아키텍처: https://scbyun.com/1094
– MySQL 5.7 MHA(마스터 고가용성)에 대한 설정: https://scbyun.com/1090
– https://www.slideshare.net/NHNFORWARD/mysql-nhn-forward-2018
– https://www.slideshare.net/neoclova/maria-db-250919306