본문 바로가기
Database/MYSQL

MHAMySQL High Availability

by 반화넬 2016. 4. 25.
반응형

MHAMySQL High Availability

MHA Architecture

Basic Architecture

mha-1

MHA & Pacemaker Architecture

mha-1

MHA 장애 처리 순서

MHA 장애 처리 5단계

  1. Configuration Check
    1. Check Connect to server
    2. Find Dead Server and Alive Server
  2. Dead Master Shutdown
    1. Stop Slave IO Thread
    2. Run master_ip_failover and shutdown script
  3. Master Recovery
    1. Getting Lastest Slaves
    2. Saveing Dead Master’s binlog file
    3. Determining New Master
    4. New Master Diff Log Generation
    5. New Master Log Apply
    6. Run Master_ip_failover script
  4. Slaves Recovery
    1. Starting Parallel Slave Diff Log Generation
    2. Starting Parallel Slave Log Apply
  5. New Master Cleanup
    1. Resetting Slave info on the New Master
    2. Clearing Slave info

MHA의 장점

Benefit

  1. 최소한의 Down Time으로 Master의 장애 처리 및 Slave의 새로운 Master로 변경 수행 가능
  2. Master의 장애로 각 노드(Master 및 Slave)의 데이터 불일치가 발생하지 않음
  3. 현재 MySQL 서버의 설정을 변경 할 필요가 없음 (MySQL 5.0이상)
  4. 서버를 많이 늘릴 필요가 없음 (MySQL Cluster 대비)
  5. 스토리지 엔진에 제약을 받지 않음
  6. MySQL 성능에 전혀 제약 사항이 없음
mha-1

다양한 MHA Achitecture

  • Single master, multiple Slaves
  • Single master, multiple Slaves (one on remote datacenter)
  • Single master, multiple Slaves, one candidate master
  • Three Tier replication
  • Three Tier replication, multi-master

MHA 0.56 New Feature

  • MySQL 5.6 GTID 지원
  • MySQL 5.6 Multi-Thread Slave 지원
  • MySQL 5.6 Binlog checksum 지원
  • mysqlbinlog streaming host 지원
  • mysqlbinlog 위치 지원
  • ping_type=Select / Connect 이외 insert 추가
  • master_ip_online_change_scrip에 --orig_master_is_new_slave, --orig_master_ssh_user and --new_master_ssh_user option 추가


출처 : http://www.osskorea.co.kr/databaseHA.php

반응형