몽고DB 복제(Replication) 방식: 3벌식, PSA 구조 비교 및 설명

2025. 3. 14. 00:19IT/몽고DB

몽고디비의 복제(Replication)란?

몽고디비에서 복제(Replication)는 데이터를 여러 서버에 복사하여 장애 대비, 데이터 보호 및 고가용성을 확보하는 방법입니다.
몽고디비는 최소 3개 서버(노드)로 구성된 복제 세트(Replica Set) 운영을 권장하며, 대표적인 구성은 다음 두 가지가 있습니다.

  • 3벌식 (Primary-Secondary-Secondary)
  • PSA 구조 (Primary-Secondary-Arbiter)

각각의 의미와 특징을 간단히 살펴보겠습니다.


3벌식 복제 (Primary-Secondary-Secondary)

구성 요소

  • Primary (1대): 주 데이터베이스로 읽기/쓰기 작업 수행
  • Secondary (2대): Primary 데이터를 복제하며, 읽기 작업 및 장애 시 Primary 역할 수행

구조도

        +-------------------+
        |     클라이언트       |
        +---------+---------+
                  |
                  v
         +--------+--------+
         |   Primary      |◀───────┐
         +--------+--------+       |
           │복제           ┌─────────┘
           v              v
+----------------+   +----------------+
| Secondary #1   |   | Secondary #2   |
| (복제본, 장애 대비)|   | (복제본, 장애 대비)|
+----------------+   +----------------+

 
장점 

  • 장애 발생 시 빠르고 명확한 장애 복구 가능
  • 데이터 안정성과 가용성이 매우 높음
  • 읽기 부하 분산 가능

단점 

  • 서버 비용 및 관리 부담 증가 (총 3개의 데이터 노드 유지)

PSA(Primary-Secondary-Arbiter) 구조

구성 요소

  • Primary (1대): 읽기/쓰기 작업 수행 및 데이터 복제
  • Secondary (1대): Primary 데이터를 복제하며 장애 대비
  • Arbiter (1대): 데이터 복제 없이 투표권만 보유 (Primary 선출에만 참여)

구조도

          Client
              │
              ▼
       ┌─────────────────┐
       │    Primary      │ ◀────────────┐
       │ (읽기/쓰기, 데이터 복제)            │
       +----------------─+              │
               │                        │
               v                        │
   +----------------+           +-------------------+
   | Secondary      |           | Arbiter           |
   | (복제, 장애대비)  |           | (데이터 없음, 투표권)  |
   +----------------+           +-------------------+

장점 

  • 서버 자원이 적게 드는 경제적인 구성
  • 빠른 장애 복구 가능 (자동 Failover 제공)

단점 

  • Secondary 장애 시 Arbiter는 데이터가 없어 위험 증가
  • 장애 발생 시 Secondary 하나만으로 운영되므로 부하가 집중될 위험

🚨 3벌식 vs PSA 구조 비교 요약

구분 3벌식(Primary-Secondary-Secondary) PSA(Primary-Secondary-Arbiter)
안정성 ⭐⭐⭐⭐⭐ (매우 높음) ⭐⭐⭐ (보통)
비용 효율성 ⭐⭐ (비용 다소 높음) ⭐⭐⭐⭐⭐ (경제적)
부하분산 가능성 가능(Secondary 분산) 제한적(Secondary 1대만 가능)
자동 장애 복구(Failover) 가능(안정적) 가능(약간의 리스크 존재)
추천 환경 중~대규모 시스템, 높은 안정성 요구 소규모 시스템, 서버 비용 제한적 환경

📌 결론

  • 안정성과 성능 중심이라면 3벌식 구성을 추천합니다.
  • 서버 비용, 자원이 제한적인 환경에서는 PSA 구조를 고려할 수 있습니다.
 

몽고DB 노드별 구성요소 및 정의

Replica Set  노드 구성요소Replica Set은 MongoDB의 고가용성(High Availability)과 장애 복구(Failover)를 위한 구조입니다. 기본적으로 다음과 같은 노드로 구성됩니다.1. Primary Node (주 노드)클라이언트의 읽

make2t.tistory.com

 

반응형