Enterprise Infrastructure Intelligence ● Certified engineers online · Fast response guaranteed
웹서버/DB

MongoDB Replica Set: 고가용성을 위한 분산 복제 구조

MongoDB Replica Set은 데이터 중복성과 고가용성을 제공하는 핵심 아키텍처로, Primary 노드가 쓰기를 처리하고 Secondary 노드가 비동기 Oplog 기반 복제를 통해 데이터를 동기화합니다. 장애 시 자동 Failover와 선거 메커니즘을 통해 신규 Primary를 선출하며, 최대 50개 멤버(7개 투표 멤버)를 지원합니다.

2026.09.09  ·  26회  · 

Replica Set의 기본 구조

프로덕션 환경의 표준 Replica Set 배포는 3개 멤버로 구성되며, 3개 데이터 보유 멤버(Primary-Secondary-Secondary) 또는 비용 제약 시 2개 데이터 멤버와 Arbiter로 구성됩니다. Primary는 유일하게 쓰기 작업을 처리하는 멤버이며, Secondary는 Primary의 데이터 복사본을 유지하면서 Primary의 Oplog에서 작업을 비동기적으로 적용합니다.

데이터 동기화 메커니즘

MongoDB는 초기 동기화와 지속적 복제의 두 가지 동기화 형태를 사용합니다. Oplog는 Primary에 적용되는 모든 쓰기 작업을 기록하는 특별한 Capped Collection이며, Secondary는 이를 지속적으로 추적하여 동일한 작업을 적용합니다. Oplog 윈도우는 가장 최신과 가장 오래된 타임스탐프 간 시간 차이로, Secondary가 Primary와의 연결을 잃었을 때 복제로 복구할 수 있는 시간을 결정합니다.

자동 Failover와 선거

Secondary가 Primary와의 연결을 기본값 10초 이상 잃으면 선거가 자동으로 트리거되어 남은 Secondary 중 하나가 새 Primary로 선출됩니다. 기본 설정 하에서 새 Primary를 선출하는 데 소요되는 중앙값은 12초 이내입니다. 멤버 우선순위는 선거의 시기와 결과에 영향을 미치며, 우선순위가 높은 Secondary가 더 빨리 선거를 호출하고 당선될 가능성이 높습니다.

투표 및 확장성

Replica Set은 최대 50개 멤버를 가질 수 있지만 투표 멤버는 최대 7개이며, 7개 투표 멤버 초과 멤버는 비투표 멤버여야 합니다. 투표 멤버의 홀수 개 유지를 권장하여 안정적인 쿼럼 형성을 보장합니다.

참고 출처: MongoDB Docs
WIKIDATA WORKSTATION
AI·렌더링에 최적화된
전문가용 워크스테이션
NVIDIA RTX GPU · 최대 192GB 메모리 · ECC 지원