High Availability
Cluster Manager 구성, 장애 감지와 역할 전환 원칙
Cluster Manager 구성
Primary와 Hot Standby 사이의 스트리밍 복제, 클러스터 합의, 상태 점검과 서비스 경로 전환을 결합해 고가용성을 구현합니다.
- Patroni: PostgreSQL 노드 역할과 Failover 오케스트레이션
- etcd: 리더 선출과 클러스터 상태 합의
- HAProxy: 읽기·쓰기와 읽기 전용 연결 경로
- Keepalived·VRRP: 서비스 VIP 전환
장애 전환 흐름
- 노드와 PostgreSQL 상태를 반복 점검합니다.
- 클러스터가 Primary 장애를 합의합니다.
- 동기화 상태가 가장 적합한 Standby를 승격합니다.
- VIP와 연결 경로를 새 Primary로 전환합니다.
- 애플리케이션 연결과 데이터 정합성을 점검합니다.
운영 고려사항
동기 복제 수준, 네트워크 지연, 애플리케이션의 재시도 정책이 복구 시간과 데이터 보호 수준에 직접 영향을 줍니다. 외부 PoC에서는 동기 복제 조건에서 8~14초가량의 순단 후 데이터 유실 없이 역할이 전환됐습니다.
Test regularly
계획된 Switchover, 노드·네트워크·디스크 장애, 재가입과 백업 복구를 정기적으로 리허설해야 합니다.
이 문서가 도움이 되었나요?