본문 바로가기
Mysql

MHA failover 테스트 및 원복 테스트

by ohrohi 2019. 8. 7.
반응형

서버정보

Manager: Centos 6.10

DB: CentOS Linux release 7.5.1804 (Core), mysql 5.5.42

Manager: 192.168.0.20

DB01: 192.168.0.21

DB02: 192.168.0.22

DB03: 192.168.0.23

VIP: 192.168.0.30

DB01~03 Replication

 

- Manager 서버 로그 확인

 모니터링 서버에서 mha데몬 구동시 상태 및 로그 확인

- 데몬구동 및 로그확인

# masterha_manager --conf=/etc/app1.cnf &

# ps –ef | grep masterha

root 8484 8366  0 09:52 pts/0 00:00:00 perl /usr/local/bin/masterha_manager --conf=/etc/app1.cnf

 

Mha 구동 후 로그 상태 ( 마지막줄 로그 확인)

 

- MHA failover Test 진행

- DB01 서버 DB 셧다운

 # systemctl stop mysqld  혹은 /etc/init.d/mysqld stop

 

 

- VIP 확인

 

-       FailoverIP 상태

-       FailoverIP 상태

 

 - DB02 서버 상태 확인

 mysql> show slave status\G (명령어 입력시 Empty Set 이 출력되면 master로 변경된 상태)

 mysql> show master status\G (상태확인)

 

VIP 확인

 

DB03 서버 상태 확인

 

- 기존 DB01(192.168.0.21) 에서 DB02(192.18.0.22)MASTER_HOST가 변경된 것 확인

 

 

 

 

 

 

 

 

 

 

Manager 서버 로그 확인

-       Master 서버의 DB DOWN시 로그

 

-       Failover 완료 후 로그

 

 - 원상복구 진행 (MHA 데몬 중단된 상태에서 진행)

 

DB02 서버 상태 확인 (Master 상태인지 확인)

mysql> show master status\G

 

DB02에서 DB01Master/slave 변경전 slave 설정 (DB01에서 실행)

-       현재 마스터인 DB02 (192.168.0.22)터로 설정

mysql> CHANGE MASTER TO MASTER_HOST='192.168.0.22', MASTER_USER='리플리케이션 유저명', MASTER_PASSWORD='리플리케이션 패스워드';

mysql> start slave;

mysql> show slave status\G

 

manager서버에서 스위칭 명령어 실행

# masterha_master_switch --master_state=alive --conf=/etc/app1.cnf

                                             .

                                             .                    

                                             .

                                         (중략)

                                             .

                                             .                    

                                             .

                                          (중략) 

 

 

 

DB01, 02 각 서버에서 Master/Slave 상태 확인

명령어 실행 후 DB01에서 show slave status 명령어 실행시 Empty set이 출력되면 스위칭 프로세스 정상 실행

DB02 slave로 변경

mysql> CHANGE MASTER TO MASTER_HOST='192.168.0.21', MASTER_USER='리플리케이션 유저명', MASTER_PASSWORD='리플리케이션 패스워드';

mysql> start slave;

mysql> show slave status\G

Manager 서버에서 MHA 데몬 구동 (시작전 /var/log/masterha/app1/mha.failover.complete 해당파일 삭제후 실행)

 

-  데몬 구동전 ssh, replication 상태 체크 후 진행

# masterha_check_ssh --conf=/etc/app1.cnf

 

# masterha_check_rep --conf=/etc/app1.cnf

 

- mha 데몬 재가동

# masterha_manager --conf=/etc/app1.cnf &  

# ps –ef | grep masterha

root 8484 8366 0 09:52 pts/0 00:00:00 perl /usr/local/bin/masterha_manager --conf=/etc/app1.cnf

반응형

'Mysql' 카테고리의 다른 글

mysql 계정 권한설정 (all 제외)  (0) 2019.08.23
db 유저추가 및 권한설정  (0) 2019.08.21
mysql 쿼리문으로 slow쿼리, 시간 설정하기  (0) 2019.08.07
mysql 쿼리 로그 만들기  (0) 2019.07.30
mysql replication 설정  (0) 2019.05.27