Failover 핵심
장애 조치는 단순히 서버를 바꾸는 작업이 아니라, 복제 체인의 기준점을 살아 있는 최신 Replica로 옮기고 그 기준에 맞춰 쓰기 경로와 나머지 복제 경로를 다시 연결하는 절차입니다.
1 감지

기존 Master가 응답하지 않음을 판정

기존 Master
Heartbeat 연속 실패
Replica A
Replica B

감시 노드는 일시적인 지연이 아니라 실제 장애인지 확인한 뒤에만 전환을 시작합니다.

2 승격

가장 최신 상태의 Replica를 새 Master로 선택

선택 기준
복제 지연이 가장 적고, 마지막 로그까지 가장 많이 따라온 노드
Replica A → New Master

후보를 잘못 고르면 서비스는 재개되어도 장애 직전 쓰기 일부가 사라질 수 있습니다.

3 재연결

애플리케이션과 나머지 Replica의 기준점을 새 Master로 전환

APP 쓰기 → New Master
새 복제 기준
Replica B ← New Master

클라이언트의 쓰기 대상과 복제 방향이 함께 바뀌어야 실제 장애 조치가 완료됩니다.

전환 후 바로 바뀌는 상태

쓰기 대상
기존 Master에서 새 Master로 이동
복제 기준
남은 Replica들이 새 Master를 따라감
일관성 관점
최신 Replica를 고를수록 장애 직전 데이터 손실을 줄일 수 있음

운영 의미

Failover의 목표는 가용성 복구만이 아닙니다. 어떤 Replica를 승격하느냐에 따라 복구 후 데이터 상태도 달라지므로, 장애 감지와 승격 기준은 항상 함께 설계되어야 합니다.