[MHA] Mysql MHA FailOver 확인 및 이후 원복 절차
MHA - FailOver 이후 원복 작업
Failover 이후 Master-Slave상태를 원복하는 작업 절차입니다.
이때 MHA 데몬이 중단된 상태에서 실행해야 합니다.(실행상태에서는 오류가 발생함)
1.MHA 원복 – 현재 DB장비 상태 확인
Master DB의 장애 이후 Slave 장비의 현재 상태 확인
Slave였던 Slave장비가 Master로 승격된 것을 확인
이후 장애가 났던 Master 장비의 장애 복구 후 기동해 놓는다.
Master 장비와 Slave장비를 Master/Master 상태로 세팅 한다.
※Master장비 Database 접속 ip는 내려가 있는 상태여야함
2.MHA 원복 – Slave장비와 장애가 발생한 Master장비의 데이터 동기화
1. 온라인 상태에서 장애 원복을 위해 Master장비를 Slave장비의 Slave로 설정
MHA Manager에서는 FailOver 발생시 MHA.log에 장애 발생시 binlog position을 남겨둔다.
Master 장비
mysql -uroot -pxxxx (db접속) |
CHANGE MASTER TO MASTER_HOST='192.xxx.xxx.xxx', MASTER_PORT=3306, MASTER_LOG_FILE='mysql-bin.000015', MASTER_LOG_POS=468109880, MASTER_USER='mha', MASTER_PASSWORD='mha123'; start slave; Show slave status\g; |
3.MHA 원복 – Slave장비에서 Master장비의 서비스 이관
※서비스를 이관시키기 전에 반드시 masterha_default.failover.complete 파일을 삭제하여야 한다.
해당 파일을 삭제 하지 않고서는 서비스 이관은 가능하나 서비스 이관 후 MHA Manager 실행이 불가능 하다.
이는 FailOver 발생한 것을 확인하는 절차이다.
Slave 장비
명령어 |
Masterha_check_status --conf=/etc/masterha-default.conf (MHA Manager 현재 상태 확인) nohup Masterha_manager --conf=/etc/masterha-default.conf (MHA Manager 기동) |
Slave 장비
mysql -uroot -pxxxx (db접속) |
CHANGE MASTER TO MASTER_HOST='192.xxx.xxx.xxx', MASTER_PORT=3306, MASTER_LOG_FILE='mysql-bin.000017', MASTER_LOG_POS=154, MASTER_USER='mha', MASTER_PASSWORD='mha123'; start slave; Show slave status\g; |
Master / Slave 장비
명령어 |
ifconfig |
※Switch를 했을때 FailOver로 인해 내려갔던 Master IP가 올라온 것을 확인하고 Slave장비의 서비스 IP가 내려갔는지 확인
4.MHA 원복 – 원복 완료 후 MHA Manager 장애모니터링 시작
Slave 장비
명령어 |
Masterha_check_status --conf=/etc/masterha-default.conf (MHA Manager 현재 상태 확인) nohup Masterha_manager --conf=/etc/masterha-default.conf (MHA Manager 기동) |