내 잡다한 노트
pg_rewind 란? 본문
pg_rewind는 PostgreSQL에 내장된 유틸리티로,
실패한 이전 primary 서버의 데이터 디렉터리와 현재 새로운 primary 서버의 데이터 디렉터리 간의 차이를 계산하여,
이전 primary 서버를 신속하게 동기화(리와인드)할 수 있도록 도와줍니다.
주요 기능 및 사용 목적
- 빠른 재동기화:
기존 primary가 장애로 인해 다운된 후, 새로운 primary로 선출된 서버와 데이터가 약간씩 달라진 상태일 때,
pg_rewind를 사용하면 전체 데이터베이스의 베이스백업을 다시 만드는 대신,
변경된 부분만 빠르게 동기화할 수 있습니다. - 복구 효율성:
데이터 복제 지연이나 장애 복구 시, 전체 클러스터를 재구성하는 시간과 리소스를 절약할 수 있습니다. - 클러스터 페일오버 후 복원:
예를 들어, Patroni와 같은 HA 솔루션에서 primary 장애 발생 후 자동 페일오버가 진행되면,
기존의 primary 노드는 pg_rewind를 사용하여 새로운 primary와 동일한 상태로 복구할 수 있습니다.
요약하면, pg_rewind는 PostgreSQL 클러스터 환경에서 장애 복구 및 노드 재동기화 작업을 신속하고 효율적으로 수행하기 위한 도구입니다.
'DB > PostgreSQL' 카테고리의 다른 글
Pigsty 란? (0) | 2025.02.15 |
---|---|
Patroni 설정 파일 (0) | 2025.02.13 |
Citus를 왜 사용해야하는가? (0) | 2025.02.12 |
PostgreSQL Citus (0) | 2025.02.12 |
PostgreSQL의 HA를 위해 설계된 Patroni (0) | 2025.02.12 |