Last Updated on 6월 25, 2024 by Jade(정현호)
안녕하세요
이번 포스팅은 MySQL 의 고가용성 솔루션인 MHA에 대한 설치 및 구성 그리고 사용에 관한 두 번째 포스팅 글입니다.
MHA의 2번째 글로 아래 포스팅에서 이어지는 글입니다.
Contents
MHA 구성 환경 내역
포스팅에서는 아래 이미지와 같이 총 4개 서버 를 통해 설치 및 구성하였습니다.
MySQL 설치 버전 및 경로
OS: CentOS 7.8
MySQL: 5.7.31
MySQL S/W 경로 : /usr/local/mysql
IP 설정 내역
Master Server - 192.168.56.51 / Hostname: acs
Slave Server1 - 192.168.56.52 / Hostname: acs2
Slave Server2 - 192.168.56.56 / Hostname: acs3
MHA Manager - 192.168.56.104 / hostname: mgr
Master DB VIP - 192.168.56.50
/etc/hosts 설정 내역 - 모든 서버 공통
192.168.56.51 acs
192.168.56.52 acs2
192.168.56.56 acs3
192.168.56.104 mgr
192.168.56.50 mha-master-vip
* 본문 내용과 작성된 스크립트 내부에서 대부분 위의 호스트 네임을 사용합니다
MHA 설치 환경
conf 파일 위치: /etc/masterha/
script 위치: /masterha/scripts/
MHA 매니저/Remote 서버 실행 정보 저장 디렉토리 및 로그 디렉토리
/masterha/app1/
* 각 노드에 MySQL 은 설치된 상태에서 진행된 시나리오입니다.
설치 방법은 아래 포스팅을 참조하시면 됩니다.
• 우분투 - MySQL 5.7 설치 - APT,Binary, Source Compile
•CentOS - MySQL 5.7 YUM 으로 설치
•CentOS - MySQL 5.7 - Source Compile, Binary Unzip 설치
MySQL 8 버전 환경의 MHA글은 아래 포스팅을 참조하시면 됩니다.(RockyLinux 8, ProxySQL 사용)
MySQL Replication 구성
MHA 포스팅 1편 에서 설명 드린 것처럼 데이터에 손실 방지나 최소화하기 위해서는 Semi Sync(Lossless Replication) 이 권장되고 있습니다.
Semi Sync Replication 은 아래 포스팅을 참조하시면 됩니다.
Semi-sync Replication 은 MySQL 5.5 버전에서 도입된 sync 형태의 복제 방식입니다.
Semi-sync Replication 방식은 Master 에서 Slave 로 전달된 Relay log의 기록이 완료되었다는 메세지(신호)를 받고나서 처리중인 transaction의 결과를 요청한 application(client)에 결과를 반환해주는 방식입니다.
그래서 Master 장애시 복제에 대해서 손실 방지 혹은 손실의 최소화를 할 수 있습니다
포스팅에서는 설명의 간략화를 위해 async로 구성하였습니다.
자세한 내용은 아래 포스팅을 꼭 참조해주세요
• MySQL 복제구성 - Async 구성 및 Semi Sync
• MySQL 복제구성 - Semi Sync 구성 및 설정
MySQL 설정 변경 - my.cnf 수정
MySQL 복제 구성을 위해서 MySQL 설정을 먼저 변경하도록 하겠습니다.
# 으로 된 설명(주석) 은 복사에서 제외하고 사용하시면 됩니다.
[root]# vi /etc/my.cnf
# Master 설정
[mysqld]
server-id=1
# -> server-id는 master와 slave가 달라야 합니다
### Replication
log-bin=/usr/local/mysql/logs/binlog
# -> Binlog의 파일명을 기재합니다.
sync_binlog=1
binlog_cache_size=2M
binlog_format=ROW
max_binlog_size=512M
expire_logs_days=7
log-bin-trust-function-creators=1
report-host=acs
# -> 각 DB의 호스트네임으로 show slave hosts 에서 정보로 활용
relay-log=/usr/local/mysql/logs/relay_log
relay-log-index=/usr/local/mysql/logs/relay_log.index
relay_log_purge=off
expire_logs_days=7
log_slave_updates=ON
# Slave 설정
[mysqld]
server-id=2
# -> server-id는 master와 slave가 달라야 합니다
### Replication Option
log-bin=/usr/local/mysql/logs/binlog
# -> Binlog의 파일명을 기재합니다.
sync_binlog=1
binlog_cache_size=2M
binlog_format=ROW
max_binlog_size=512M
log-bin-trust-function-creators=1
report-host=acs2
# -> 각 DB의 호스트네임으로 show slave hosts 에서 정보로 활용
relay-log=/usr/local/mysql/logs/relay_log
relay-log-index=/usr/local/mysql/logs/relay_log.index
relay_log_purge=off
expire_logs_days=7
log_slave_updates=ON
read_only=ON
# Slave 설정
[mysqld]
server-id=3
# -> server-id는 master와 slave가 달라야 합니다
### Replication Option
log-bin=/usr/local/mysql/logs/binlog
# -> Binlog의 파일명을 기재합니다.
binlog_cache_size=2M
binlog_format=ROW
max_binlog_size=512M
log-bin-trust-function-creators=1
report-host=acs3
# -> 각 DB의 호스트네임으로 show slave hosts 에서 정보로 활용
relay-log=/usr/local/mysql/logs/relay_log
relay-log-index=/usr/local/mysql/logs/relay_log.index
relay_log_purge=off
expire_logs_days=7
log_slave_updates=ON
read_only=ON
* 포스팅에서는 마스터1대 , 슬레이브 2대의 구성입니다.
* MHA에서 relay_log_purge 의 권장값은 비활성화 하며, fail-over나 Switch-over시 MHA 에 의해 purge 되고 별도의 log purge 는 다음 포스팅에서 설명하고 있습니다.
재시작 및 유저 생성
이전 단계에서 my.cnf 를 수정하였고 적용하기 위해서 MySQL 재시작 과 복제에 사용할 별도의 DB 유저를 생성하겠습니다.
MySQL 재시작
위 설정을 추가하고 master/slave 모두 mysql을 재시작 합니다.
[root]# systemctl restart mysqld
Replication 전용 유저 생성
(마스터,슬레이브 - 모든 DB)
[root]# mysql --login-path=dba
mysql> create user 'repl_user'@'%' identified by 'repl_user';
mysql> grant replication slave on *.* to 'repl_user'@'%';
mysql> flush privileges;
[참조] --login-path 는 MySQL 5.6부터 추가된 기능으로 접속정보, 계정정보를 암호화해 저장해서 사용하는 기능입니다
자세한 내용은 아래 포스팅을 참조하시면 됩니다.
Replication 설정
이제 Slave 인스턴스에서 Replication 설정을 진행하도록 하겠습니다.
복제 구성을 위해서 마스터에서 binlog 파일 정보와 log pos 정보를 확인하도록 하겠습니다.
Note
포스팅에서는 테스트 시스템으로 데이터가 계속 변경되지 않고 초기 데이터의 차이가 없기 때문에 이와 같이 진행하였습니다. 실제 사용 환경에서는 mysqldump 나 xtrabackup 등을 통해서 Master DB 나 Backup 에서 데이터 구성 및 biolog pos 정보 등을 확인하여 복제를 구성해야 합니다.
마스터에서 정보 조회
mysql> show master status\G
*************************** 1. row ***************************
File: binlog.000020
Position: 154
Binlog_Do_DB:
Binlog_Ignore_DB:
Executed_Gtid_Set:
Slave 에서 Replication 설정 및 시작
mysql> CHANGE MASTER TO MASTER_HOST='acs', MASTER_USER='repl_user',
MASTER_PASSWORD='repl_user',
MASTER_LOG_FILE='binlog.000020',
MASTER_LOG_POS=154;
mysql> start slave;
mysql> show slave status\G
Note
포스팅의 테스트 시스템에서는 /etc/hosts 에 mha 서버와 각 MySQL 인스턴스의 호스트명과 IP 명에 대한 정보가 설정된 환경에서 진행 중입니다.
마스터에서 조회
mysql> show slave hosts\G
*************************** 1. row ***************************
Server_id: 3
Host: acs3
Port: 3306
Master_id: 1
Slave_UUID: 706aaace-11d5-11eb-8127-0800279c8b61
*************************** 2. row ***************************
Server_id: 2
Host: acs2
Port: 3306
Master_id: 1
Slave_UUID: 6e5b28b4-3666-11eb-a44f-080027bf7f98
2 rows in set (0.00 sec)
* master / slave 모두 MySQL 설치 직후 Replication 임으로 master를 통해 초기데이터를 구성하지 않았지만, 계속 사용 중인 master 라면 mysqldump 등을 통해 초기 데이터 복제가 필요 합니다.
mha 접속 DB 계정 생성
MHA 매니저 서버에서는 소스, 리플리카 인스턴스 모든 DB에 접속할 수 있어야 합니다.
기본적으로 MySQL의 관리 계정인 root 유저를 사용하며, 별도의 계정 생성 및 권한 부여를 하여 사용할 수도 있습니다.
포스팅에서는 별도로 계정을 생성하여 진행하였으며, 기본 관리자 계정인 root 계정을 사용해도 됩니다.
생성된 계정을 통해서 STOP SLAVE, CHANGE MASTER, RESET SLAVE와 같은 필요한 모든 관리 명령을 실행하게 되며 그에 따라서 관리자 권한이 필요 합니다.
Master 에서 수행
[root]# mysql --login-path=dba
mysql> CREATE USER ‘mha’@'%' IDENTIFIED BY 'mha';
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘mha’@'%';
mysql> FLUSH PRIVILEGES;
* 계정명과 비밀번호는 예시입니다.
* mysql 스키마를 포함한 전체 복제 구성이라면 Master에서 계정 생성시 Slave에서도 동일하게 생성됩니다.
* mysql 스키마를 복제에서 제외하였다면 Slave에서 별도로 계정을 생성합니다.
생성 확인 - Slave 에서 조회
mysql> select user,host from mysql.user where user='mha';
OS 유저 생성 및 SSH 인증 설정
MHA로 관리되는 모든 서버에는 SSH를 통해서 접속할 수 있어야 하며, MHA 매니저 서버에서 마스터 서버, 슬레이브 서버에 비밀번호 입력 필요 없이 접속 가능한 환경이 구성되어 있어야 합니다.
먼저 모든 서버에 공통으로 유저를 생성합니다.
OS 유저 생성 및 설정
그룹 생성 및 유저를 아래와 같이 추가합니다.
[root]# useradd -g mysql mha [root]# passwd mha Changing password for user mha. New password: [패스워드 입력] Retype new password: [패스워드 입력] [root]# su - mha
PATH 관련 환경 변수를 추가
(모든 노드의 mha 유저)
[mha]$ echo "export PATH=$PATH:/usr/local/bin:/usr/local/mysql/bin" >> ~/.bash_profile [mha]$ source ~/.bash_profile
* /usr/local/mysql/bin 위치는 소스 컴파일이나 Binary unzip 으로 설치하였을 때 위치입니다.
RPM/YUM 패키지로 설치하였을 경우 /usr/local/bin 만 추가 해주시면 됩니다.
모든 서버에서 생성 SSH 키 생성
생성 명령어 : ssh-keygen -t rsa -b 4096
[mha]$ ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/home/mha/.ssh/id_rsa): [엔터] Created directory '/home/mha/.ssh'. Enter passphrase (empty for no passphrase): [엔터] Enter same passphrase again: [엔터] Your identification has been saved in /home/mha/.ssh/id_rsa. Your public key has been saved in /home/mha/.ssh/id_rsa.pub. The key fingerprint is: SHA256:J52+2342342sdfsdfasdfasfasdfasf mha@xxxx The key's randomart image is: +---[RSA 4096]----+ |xxxxxxxx .. | |.xxxxxx.. | | o.xxxxxxx | |+xxxxxxxxx . | |=..xxxxxx + | |+.. . o.++ | |.xxxxxxxxxxx | | xxxxxxxxxxxx | | xxxxxxxx | +----[SHA256]-----+
공개키 전송(Copy)
생성한 공개키(.pub)를 모든 서버로 전송해야 합니다.
매니저 서버에서 -> 1,2,3 번 서버로
1번 서버에서 -> 매니저 서버,2,3번 서버로
2번 서버에서 -> 매니저 서버,1,3번 서버로
3번 서버에서 -> 매니저 서버,1,2번 서버로
ssh-copy-id 를 이용하면 되며 아래와 같이 수행합니다.
명령어 예시: 매니저 서버-> 1번 서버로 공개키 복사
[mha]$ ssh-copy-id -i acs
mha@acs's password: [패스워드입력]
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'acs'"
and check to make sure that only the key(s) you wanted were added.
전송이 완료되었다면 패스워드 없이 접속이 되는지 확인해봅니다.
[mha]$ ssh acs
Last login: Fri Dec 2020
[mha@acs ~]$ hostname
acs <-- 정상적으로 접속이 확인됨
1번 서버에서는 매니저서버로 부터 전송 받은 키는 authorized_keys 파일에 입력되어 있습니다.
[mha]$ cd .ssh
[mha]$ cat authorized_keys
ssh-rsa XXXXXXXXXX== mha@mgr
위와 같은 방법으로 공개키를 서버간에 모두 복사(전송) 합니다.
mha 유저 sudo 설정
VIP 에 대한 Failover(장애조치) 및 IP assign 을 위해 필요시 mha 유저가 root 권한을 수행할 수 있도록 sudouser 를 설정해야 합니다.
mha 유저 sudo 설정
마스터 노드와 슬레이브 모두에서 설정이 필요 합니다
[root]# visudo
아래 내용 추가합니다.
mha ALL=(ALL) NOPASSWD:/sbin/ifconfig
[mha]$ifconfig -a
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.51 netmask 255.255.255.0 broadcast 192.168.56.255
* 포스팅 환경에서 public nic은 enp0s3 입니다.
가상 IP(VIP) 설정 테스트
mha 유저로 vip 가동 여부를 확인하는 절차로 마스터서버와 슬레이브 노드 모두에서 한 번씩은 테스트를 진행합니다.
VIP UP
[mha]$ sudo ifconfig enp0s3:0 192.168.56.50 netmask 255.255.255.0 up
* 192.168.56.50 는 포스팅 환경에서의 VIP 입니다.
* 서브넷(netmask)는 사용하는 환경에 따라서 C 클래스가 아닐 수도 있으며, 포스팅 환경에서는 C 클래스 255.255.255.0 로 사용 중 입니다.
[mha]$ ifconfig -a
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.51 netmask 255.255.255.0 broadcast 192.168.56.255
enp0s3:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.50 netmask 255.255.255.0 broadcast 192.168.56.255
ether 08:00:27:d4:f8:ed txqueuelen 1000 (Ethernet)
VIP Down
[mha]$ sudo ifconfig enp0s3:0 down
MHA 설치
이제 MHA 를 설치하도록 하겠습니다.
필요 패키지 설치
MHA 설치에 따른 필요한 패키지 설치를 해야 합니다.
모든 서버에 공통적으로 설치를 하면 됩니다.
[root]# yum install perl-DBD-MySQL \
perl-Config-Tiny perl-Log-Dispatch \
perl-Parallel-ForkManager \
perl-Log-Dispatch perl-Time-HiRes \
perl-CPAN perl-Module-Install
MHA 매니저 설치
MHA 매니저를 설치를 진행하도록 하겠습니다
(mha4mysql-manager-0.58)
매니저 서버에서만 설치합니다.
[root]# mkdir -p /root/pkg
[root]# cd /root/pkg
* 경로는 임의의 경로입니다.
[root]# wget https://github.com/yoshinorim/mha4mysql-manager/releases/download/v0.58/mha4mysql-manager-0.58.tar.gz
[root]# tar zxvf mha4mysql-manager-0.58.tar.gz
[root]# cd mha4mysql-manager-0.58
[root]# perl Makefile.PL
*** Module::AutoInstall version 1.06
*** Checking for Perl dependencies...
[Core Features]
- DBI ...loaded. (1.627)
- DBD::mysql ...loaded. (4.023)
- Time::HiRes ...loaded. (1.9725)
- Config::Tiny ...loaded. (2.14)
- Log::Dispatch ...loaded. (2.41)
- Parallel::ForkManager ...loaded. (1.18)
- MHA::NodeConst ...missing.
==> Auto-install the 1 mandatory module(s) from CPAN? [y] y
[root]# make;make install
MHA Node 설치
MHA Node 를 설치하도록 하겠습니다
(mha4mysql-node-0.58)
매니저 서버 와 Master & Slave MySQL Server 모두에서 설치합니다.
[root]# mkdir -p /root/pkg
[root]# cd /root/pkg
* 경로는 임의의 경로입니다.
[root]# wget https://github.com/yoshinorim/mha4mysql-node/releases/download/v0.58/mha4mysql-node-0.58.tar.gz
[root]# tar zxvf mha4mysql-node-0.58.tar.gz
[root]# cd mha4mysql-node-0.58
[root]# perl Makefile.PL
[root]# make;make install
후속 작업 수행
심볼릭 링크 생성
대상 : 마스터 서버, 슬레이스 서버 (매니저 서버 제외)
mysql 와 mysqlbinlog 파일이 아래 경로에 없다면 root 유저로 심볼릭 링크를 설정해줍니다.
[root]# ls -al /usr/bin/mysqlbinlog
[root]# ls -al /usr/local/bin/mysql
[root]# ln -s /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog
[root]# ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
필요 디렉토리 생성 및 파일 복사
= 매니저 서버에서 수행
[root]# mkdir -p /etc/masterha
[root]# mkdir -p /masterha/scripts
[root]# cd /root/pkg/mha4mysql-manager-0.58/samples
* /root/pkg/mha4mysql-manager-0.58 경로는 설치파일의 압축 해제 경로입니다
=> tar zxvf mha4mysql-manager-0.58.tar.gz
[root]# cp conf/* /etc/masterha/
[root]# cp scripts/* /masterha/scripts/
= 매니저, 마스터, 슬레이브
- 모든 서버에서 실행
[root]# mkdir -p /masterha/app1
[root]# chown -R mha:mysql /masterha
MHA 설정
아래 이미지처럼 1개의 MHA 매니저 서버에서 모니터링 하고 장애 조치가 되는 MySQL의 Replication Group 은 1개 이상이 될 수도 있습니다.
/etc/masterha_default.cnf 파일은 공통 설정(기본 설정 파일) 파일로 여러 그룹이 공통적으로 사용할 수 있습니다.
예를 들어 아이디/패스워드나 디렉토리 나 로그의 경로 가 같다면 /etc/masterha_default.cnf 파일에 설정하면 중복되는 내용을 줄일 수 있습니다.
또는 기본 설정 파일로 사용할 수 있습니다.
포스팅에는 app1.conf 를 별도로 만들어서 사용하도록 하겠습니다.
파일명: /etc/masterha/app1.cnf
매니저서버 파일 설정(app1.cnf )
[root]# cd /etc/masterha/
[root]# cp app1.cnf app1.cnf.ori
[root]# chown root:mysql app1.cnf
[root]# chmod 775 app1.cnf
[root]# vi app1.cnf
[server default] # user&password is DB User user=mha password=mha # ssh_user is OS User ssh_user=mha # repl_user&repl_password is DB User repl_user=repl_user repl_password=repl_user manager_workdir=/masterha/app1 manager_log=/masterha/app1/app1.log remote_workdir=/masterha/app1 master_binlog_dir=/usr/local/mysql/logs secondary_check_script=/usr/local/bin/masterha_secondary_check -s acs2 -s acs3 --user=mha --master_host=acs --master_ip=acs --master_port=3306 # --user=mha is os ssh user master_ip_failover_script=/masterha/scripts/master_ip_failover master_ip_online_change_script=/masterha/scripts/master_ip_online_change [server1] hostname=acs candidate_master=1 [server2] hostname=acs2 candidate_master=1 [server3] hostname=acs3 candidate_master=1
master_binlog_dir=/usr/local/mysql/logs 는 사용중인 환경에 맞게 binlog 파일이 있는 경로를 입력해 줍니다.
masterha_secondary_check 의 -s 에서는 현재 Slave DB호스트를 입력하고, Master는 "--master_host --master_ip --master_port" 에 정보를 입력합니다.
MHA 테스트를 위한 MySQL 복제 설정과 구성, OS 설정, 패키지 설치, MHA 설치 및 구성 등에 대해서 확인해 보았습니다.
다음 포스팅에서는 VIP 스크립트 생성 및 설정, MHA 모니터링, Take-over 등에 대해서 확인해 보도록 하겠습니다.
이어지는 다음 글
Reference
Reference link
https://github.com/yoshinorim/mha4mysql-manager
https://github.com/yoshinorim/mha4mysql-node
https://github.com/yoshinorim/mha4mysql-manager/wiki
https://www2.slideshare.net/matsunobu/automated-master-failover
Book
DBA를 위한 MySQL 운영 기술
연관된 글
Principal DBA(MySQL, AWS Aurora, Oracle)
핀테크 서비스인 핀다에서 데이터베이스를 운영하고 있어요(at finda.co.kr)
Previous - 당근마켓, 위메프, Oracle Korea ACS / Fedora Kor UserGroup 운영중
Database 외에도 NoSQL , Linux , Python, Cloud, Http/PHP CGI 등에도 관심이 있습니다
purityboy83@gmail.com / admin@hoing.io
안녕하세요.
다른 게시글들 보다 더 이해하기 쉽게 설명해 주시고 작성해주셔서 감사합니다.
이번 기회를 통해 MHA에 대하여 제가 잘못 알고있던 아키텍쳐들도 있었는데 다시 테스트를 해보면서 기존에 몰랐던 새로운 설정들도 천천히 정독하면서 알아가야 겠습니다^^
추가로 윗글에 추천해주신 책을 구매하여 MySQL에 대해 더 접근하고 공부하는 계기가 되었으면 좋곘네요
감사합니다.
안녕하세요
내용이 도움이 되셨다니 저도 기분이 좋습니다~!
방문 과 피드백 감사합니다.
와~ 저도 삽질 많이 하면서 구축했는데 여기에 꼭 필요한 내용들이 많이 담겨있네요~
공유 감사합니다~
안녕하세요
방문과 댓글 감사합니다 새해 복 많이 받으세요
감사합니다.
안녕하세요 좋은내용 덕분에 테스트 잘 마치고 공유할만한게 하나 있어서 공유드립니다.
masterha_master_switch 수행하면서
아래 오류가 발생할 경우, 비밀번호 복잡도 정책을 낮추고 특수문자를 뺀 비밀번호로 변경하면 정상적으로 작동합니다.
특수문자가 왜 문제를 일으키는지 부분은 잘 모르겠네요..
Tue Jun 22 01:16:27 2021 - [info]
/usr/local/masterha/bin/
master_ip_online_change
--command=stop --orig_master_host=192.168.137.5 --orig_master_ip=192.168.137.5 --orig_master_port=3306 --orig_master_user='root' --new_master_host=192.168.137.4 --new_master_ip=192.168.137.4 --new_master_port=3306 --new_master_user='root' --orig_master_ssh_user=root --new_master_ssh_user=root --orig_master_password=xxx --new_master_password=xxx
Got Error: DBI connect
(';host=192.168.137.4;port=3306;
mysql_connect_timeout=4','root',...)
failed: Access denied for user 'root'@'192.168.137.5' (using password: YES)
at /usr/local/share/perl5/MHA/DBHelper.pm line 208.
at /usr/local/masterha/bin/
master_ip_online_change line 132.
Tue Jun 22 01:16:27 2021 - [error]
[/usr/local/share/perl5/MHA/ManagerUtil.pm, ln178]
Got ERROR: at /usr/local/bin/masterha_master_switch line 57.
참고사이트 : https://topic.alibabacloud.com/a/mysql-mha-switchover-failure-one-example_1_41_30019446.html
안녕하세요
코멘트 감사합니다.
그럼 root 유저를 사용하기 보다는 MHA용 별도 유저를 사용하는 부분도 고려해볼 수 있을 것 같습니다.
정보 감사합니다.
좋은 하루 되세요
안녕하세요
매니져 서버를 따로 두지 않고 가져가려면 slave 서버 하나를 매니져 서버로 같이 사용하면 된다고 알고 있는데 맞는 정보일까요 ?
맞다면 slave1 이라는 서버에 아래 2개의 패키지를 다 설치하면 되는건가요 ?
설치 시 패키지 설치 하는 순서가 있을까요 ?
mha4mysql-manager-0.58.tar.gz
mha4mysql-node-0.58.tar.gz
안녕하세요
slave 서버에서 manager 를 사용해본적은 없으나,
기술의 설정 관련 해서 생각 해보면, 가능할 것 같긴 합니다.
node 프로그램은 manager 용 서버와 MySQL Master 와 Slave 서버 모두 설치하고,
manager 프로그램은 manager 용 서버에만 설치함으로 slave2 에는 둘다 설치하시면 될것 같습니다.
설치는 node 설치 후에 manager 를 설치해보시면 좋을것 같네요
감사합니다.