Failback vs. Fail Over

Failover 와 Failback 은 고가용성과 재해 복구 전략에서 중요한 이중 절차이다. 페일오버 (Failover) 는 Active-Passive/Active-Active 구성에서 장애 감지 후 트래픽 전환을 수행하며, AWS ELB, Kubernetes Pod 재배치 등에 적용된다. 페일백 (Failback) 은 데이터 동기화 검증 후 점진적 복구를 수행하며, DB 복제본 재동기화, 클라우드 리전 복구 시나리오에서 활용된다.

설계 방식에 따라 RTO(Recovery Time Objective) 와 RPO(Recovery Point Objective) 에 큰 영향을 미친다.

2025 년 현재 AI 기반 자동 전환 알고리즘과 블록체인 검증 기술이 접목되는 추세이다.

핵심 개념

  1. RTO (Recovery Time Objective, 목표 복구 시간)
    서비스 중단 시점부터 복구 완료까지 허용되는 최대 시간을 의미한다. Failover 와 Failback 프로세스 설계 시 가장 중요한 지표 중 하나이다.

  2. RPO (Recovery Point Objective, 목표 복구 시점)
    데이터 손실을 허용하는 최대 기간으로, 마지막 백업 시점부터 장애 발생 시점 사이에 손실될 수 있는 데이터의 양을 시간으로 표현한다.

  3. 고가용성 (High Availability, HA)
    시스템이나 서비스가 중단 없이 지속적으로 작동할 수 있는 능력을 의미한다. 일반적으로 99.9%(쓰리 나인) 부터 99.999%(파이브 나인) 까지의 가용성을 목표로 한다.

  4. 재해 복구 (Disaster Recovery, DR)
    자연재해, 사이버 공격, 장비 고장 등으로 인한 시스템 중단 후 정상 운영 상태로 복구하기 위한 전략과 프로세스를 말한다.

  5. 상태 확인 (Health Check)
    시스템의 현재 상태를 모니터링하여 장애를 감지하고 Failover 를 트리거하는 메커니즘이다.

  6. 스플릿 브레인 (Split Brain)
    두 시스템이 모두 자신을 주 시스템으로 인식하는 상황으로, 데이터 불일치와 시스템 충돌을 초래할 수 있는 심각한 문제이다.

Failover(장애 극복)

Failover 는 주 시스템 (Primary System) 에 장애가 발생했을 때 미리 준비된 대기 시스템 (Secondary System) 이 그 역할을 이어받아 서비스를 계속 제공하는 메커니즘이다. 이는 고가용성 (High Availability) 시스템의 핵심 구성 요소로, 시스템 장애가 발생해도 서비스가 중단되지 않도록 한다.

graph LR
A[주 시스템 장애] --> B[장애 감지]
B --> C{자동 전환 가능?}
C -->|Yes| D[예비 시스템 활성화]
C -->|No| E[수동 조치]
D --> F[서비스 재개]
E --> F

Failover 작동 원리

  1. 상태 모니터링: 헬스 체크를 통해 주 시스템의 상태를 지속적으로 모니터링합니다.
  2. 장애 감지: 주 시스템에서 장애가 감지되면 Failover 메커니즘이 활성화됩니다.
  3. 전환 프로세스 시작: 대기 시스템으로 서비스를 전환하는 프로세스가 시작됩니다.
  4. 리소스 활성화: 대기 시스템에서 필요한 모든 서비스와 리소스를 활성화합니다.
  5. 네트워크 라우팅 변경: VIP(Virtual IP) 주소 이전이나 DNS 레코드 업데이트를 통해 트래픽을 대기 시스템으로 리디렉션합니다.
  6. 데이터 검증: 대기 시스템의 데이터 상태를 검증하고 필요 시 최종 동기화를 수행합니다.
  7. 서비스 검증: 대기 시스템에서 모든 서비스가 정상적으로 작동하는지 확인합니다.
  8. 알림: 관리자에게 Failover 완료 및 현재 시스템 상태를 알립니다.

Failover 상세 프로세스

1
2
3
4
5
6
7
8
9
주 시스템 (Active) ── 장애 발생 ──┐
상태 모니터링 ─── 장애 감지 ─── Failover 트리거
네트워크 라우팅 변경 ←── 리소스 활성화 ←── 대기 시스템 (Standby)
            서비스 검증
            알림 및 로깅

Failover 아키텍처 유형

아키텍처 유형구성 방식 설명기능 및 역할 요약복구 시간비용 효율성복잡도
액티브 - 패시브하나는 작업 수행, 다른 하나는 대기- 주 시스템이 모든 작업 처리 - 대기 시스템은 동기화 유지 및 장애 감지 역할 - 장애 발생 시 자동 전환보통중간중간
액티브 - 액티브여러 시스템이 동시에 요청 처리- 모든 노드가 동시 작업 - 로드 밸런서로 트래픽 분산 - 실시간 복제 및 상태 공유매우 짧음낮음 (고비용)높음
웜 스탠바이일부 서비스 실행된 대기 시스템- 핵심 기능만 실행 중 - 전환 시 빠른 복구 가능 - 자원 효율적 사용짧음중간중간
콜드 스탠바이완전히 꺼져 있거나 최소 상태 유지된 대기 시스템- 평상시 리소스 거의 사용하지 않음 - 장애 시 수동 개입 후 활성화 필요길음높음 (저비용)낮음

Failover 주요 구성 요소

구성 요소기능 및 역할 요약
상태 모니터링 및 장애 감지 시스템- 주 시스템의 상태 지속적 모니터링
- CPU, 메모리, 디스크 등 주요 지표 추적
- 이상 징후 감지 및 알림
- Failover 조건 설정 및 자동 트리거
로드 밸런서 / 트래픽 관리자- 클라이언트 요청을 여러 서버에 분산
- 서버 상태 기반으로 트래픽 라우팅
- VIP(Virtual IP) 관리
- 장애 시 트래픽을 자동 재라우팅
데이터 복제 시스템- 실시간 또는 비동기 데이터 복제 수행
- 주/대기 시스템 간 데이터 일관성 유지
- 트랜잭션 로그 기반 복제
- 복구 시점 (Point-in-Time Recovery) 관리
클러스터 관리 소프트웨어- 다수 노드 간 통신 상태 유지
- 자원 (RAM, CPU 등) 할당 최적화
- 클러스터 쿼럼 (quorum) 관리
- Split Brain 상황 방지 및 리더 선출

Failover 구현 기법

Failover 방식정의구성 요소목적실제 예시
DNS 기반DNS 레코드를 변경해 트래픽을 대기 시스템으로 리디렉션- DNS 서버
- 짧은 TTL 설정
- 자동화된 DNS 업데이트
- 상태 모니터링 시스템
- 글로벌 리디렉션
- 하드웨어 의존도 낮춤
- 지역 간 분산 대응
AWS Route 53
IP 테이크오 기반VIP(Virtual IP) 를 대기 시스템으로 이동하여 트래픽을 리디렉션- 가상 IP 주소
- ARP 업데이트
- 장애 감지 시스템
- IP 인계 메커니즘
- 빠른 전환
- 클라이언트 변경 없음
- 네트워크 수준 Failover
Keepalived + VRRP
로드 밸런서 기반로드 밸런서가 비정상 서버를 제거하고 트래픽을 정상 서버로 전달- 로드 밸런서 (HW/SW)
- 상태 확인 모듈
- 서버 풀
- 세션 지속성 설정
- 자동 Failover
- 트래픽 분산
- 사용자 무중단 처리
F5, NGINX Plus, HAProxy
클러스터 기반클러스터 내 노드 간 상태 감지 후 다른 노드가 작업 인계- 클러스터 관리 SW
- 공유 스토리지
- 쿼럼 관리
- 리소스 그룹
- 고가용성 보장
- 자동 리소스 마이그레이션
- 스플릿 브레인 방지
Pacemaker + Corosync

Failover 유형

유형설명적합한 환경
자동 Failover시스템이 장애를 감지하고 자동으로 대기 시스템으로 전환고가용성이 중요한 비즈니스 크리티컬 시스템
수동 Failover관리자의 확인과 승인 후 전환이 이루어짐신중한 검토가 필요한 복잡한 시스템
계획된 Failover유지보수 등의 이유로 미리 계획하여 실행하는 Failover시스템 업그레이드, 패치 적용 시
부분 Failover시스템의 일부만 대기 시스템으로 전환모듈화된 마이크로서비스 아키텍처
지역 간 Failover한 지역의 장애 시 다른 지역으로 서비스 전환글로벌 서비스, 재해 복구 대비

페일오버 구현 (Kubernetes 예시)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
apiVersion: v1
kind: Pod
metadata:
  name: app-primary
  labels:
    app: high-availability
spec:
  containers:
  - name: app
    image: my-app:v1
    livenessProbe:
      httpGet:
        path: /health
        port: 8080
      initialDelaySeconds: 5
      periodSeconds: 5

장단점

✅ 장점⚠ 단점
즉각적 서비스 복구리소스 이중화 필요
사용자 영향 최소화데이터 일관성 문제 발생 가능

Failback(장애 복구)

Failback 은 장애 발생 후 Failover 에 의해 대기 시스템으로 전환된 서비스를 원래의 주 시스템으로 되돌리는 과정이다. 주 시스템이 복구되면 서비스를 다시 주 시스템으로 전환하여 원래의 아키텍처 구성으로 복원한다.

graph LR
A[주 시스템 복구] --> B[데이터 동기화]
B --> C[무결성 검증]
C --> D{검증 통과?}
D -->|Yes| E[트래픽 점진적 전환]
D -->|No| F[재동기화 실행]
E --> G[모니터링 강화]
F --> B

Failback 작동 원리

  1. 복구 확인: 주 시스템이 완전히 복구되었는지 확인합니다.
  2. 데이터 동기화: Failover 기간 동안 대기 시스템에서 변경된 데이터를 주 시스템으로 동기화합니다.
  3. 테스트 및 검증: 주 시스템의 완전한 기능을 테스트하고 검증합니다.
  4. 전환 계획 수립: 최소한의 서비스 중단으로 전환하기 위한 시간과 절차를 계획합니다.
  5. 사전 알림: 필요한 경우 사용자와 이해관계자에게 예정된 전환에 대해 알립니다.
  6. 서비스 전환: 계획된 시점에 서비스를 주 시스템으로 다시 전환합니다.
  7. 네트워크 라우팅 복원: 네트워크 트래픽을 주 시스템으로 다시 라우팅합니다.
  8. 대기 시스템 재설정: 대기 시스템을 원래 상태로 재설정하고 다음 Failover 를 위해 준비합니다.
  9. 모니터링: 전환 후 주 시스템의 성능과 안정성을 모니터링합니다.

Failback 상세 프로세스

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
주 시스템 (복구됨) ──── 복구 확인 ────┐
데이터 동기화 ──── 테스트 및 검증 ──── Failback 계획 수립
    전환 실행
네트워크 라우팅 복원
대기 시스템 재설정
주 시스템 모니터링 및 확인

Failback 아키텍처 고려사항

구성 요소기능 및 역할 요약
데이터 동기화 아키텍처- 변경 데이터 추적: Failover 동안 발생한 모든 데이터 변경 이력 기록
- 증분 동기화: 변경된 데이터만 식별 및 반영하여 효율적 동기화 수행
- 일관성 확인: 동기화 후 체크섬, 해시 등을 활용해 데이터 무결성 검증
롤백 계획 아키텍처- 중간 상태 저장: Failback 프로세스 중 각 단계 상태를 스냅샷 형태로 저장
- 안전 지점 설정: 장애 발생 시 복귀 가능한 체크포인트 설정
- 자동 롤백 트리거: 에러 발생 또는 SLA 위반 시 자동 복구 절차 실행

Failback 주요 구성 요소

구성 요소기능 및 역할 요약
데이터 동기화 도구- Failover 중 변경된 데이터 식별 및 추적
- 증분 방식으로 데이터 전송
- 충돌 시 우선순위 또는 정책 기반 해결
- 전송 후 데이터 정합성 검증 수행
복구 관리자- Failback 전체 계획 수립 및 실행 주체
- 각 전환 단계를 스케줄링 및 제어
- 장애 발생 시 롤백 프로세스 수행
- 진행 상황 실시간 모니터링 및 보고
테스트 및 검증 도구- 주 시스템의 기능 정상 작동 여부 테스트
- 성능 및 처리량 벤치마킹
- 데이터 정합성 및 복구 성공 여부 확인
- 사용자 관점 시나리오를 통한 품질 검증

Failback 구현 기법

Failback 방식정의구성 요소목적실제 예시
계획된 데이터 동기화 기반Failover 기간 중 변경된 데이터를 주 시스템에 전송·검증 후 전환하는 방식- 데이터 변경 추적
- 증분 동기화 도구
- 검증 프로세스
- 서비스 전환 계획
- 데이터 손실 방지
- 일관성 확보
- 안전한 전환
Oracle Data Guard (Flashback 기능 활용)
전체 데이터 복원 기반대기 시스템의 전체 데이터를 복사하여 주 시스템을 동일한 상태로 복원 후 전환- 백업/복원 도구
- 전체 복제 메커니즘
- 검증 도구
- 다운타임 계획
- 완전 일치 보장
- 복잡한 충돌 방지
- 시스템 명확성 확보
VMware Site Recovery Manager
점진적 전환 기반트래픽을 점진적으로 주 시스템으로 이동시키며 안정성 검증 후 전체 전환- 트래픽 분할
- 점진적 라우팅
- 실시간 모니터링
- 롤백 계획
- 위험 최소화
- 실시간 검증
- 문제 발생 시 빠른 롤백
AWS Global Accelerator (트래픽 다이얼 활용)

Failback 유형

유형설명적합한 환경
자동 Failback주 시스템 복구 감지 후 자동으로 원래 상태로 복귀짧은 복구 시간이 중요한 환경
수동 Failback관리자의 판단에 따라 수동으로 복귀 진행데이터 일관성이 중요한 시스템
계획된 Failback미리 정해진 시간에 계획적으로 복귀사용량이 적은 시간대에 전환 필요
점진적 Failback트래픽을 점진적으로 주 시스템으로 이동대규모 사용자 서비스
완전 재구성 Failback주 시스템을 완전히 재구성 후 복귀심각한 장애 후 복구 상황

페일백 구현 (PostgreSQL 예시)

1
2
3
4
5
6
7
8
-- 스탠바이 서버 승격
SELECT pg_promote(true);

-- 데이터 재동기화
SELECT pg_rewind(
    target_pgdata => '/var/lib/postgresql/12/main',
    source_conninfo => 'host=primary.example.com'
);

장단점

✅ 장점⚠ 단점
자원 사용 최적화복잡한 동기화 절차
장기적 비용 절감전문 운영 인력 필요

카테고리별 비교 분석

Failover 및 Failback 프로세스 흐름도

1
2
3
[주 시스템 (정상 작동)] → 모니터링 → [장애 감지] → Failover 트리거 → [대기 시스템으로 전환]
[주 시스템 (복구됨)] ← Failback 프로세스 ← [복구 확인] ← [대기 시스템 운영 중]

목적 및 필요성

Failover 와 Failback 메커니즘의 주요 목적은 시스템 장애 상황에서도 비즈니스 연속성을 보장하고 사용자에게 끊김 없는 서비스를 제공하는 것이다.

항목FailoverFailback
주요 목적주 시스템 장애 시 서비스 연속성 보장정상화 후 원래 시스템으로 복귀
비즈니스 측면 필요성다운타임 최소화로 인한 비즈니스 손실 방지원래 시스템 투자 효율성 극대화
기술적 필요성서비스 가용성 향상시스템 구성의 정상화 및 유지보수 효율성
규제 준수금융, 의료 등 산업별 가용성 규제 충족정상 운영 상태 복구를 통한 규제 준수 유지
사용자 경험서비스 중단 없는 사용자 경험 제공최적의 시스템에서 일관된 성능 보장

주요 기능 및 역할

Failover 와 Failback 은 각각 장애 발생 시와 복구 후의 시스템 전환을 담당하며, 여러 핵심 기능을 수행한다.

기능/역할FailoverFailback
장애 감지주 시스템 장애를 실시간으로 감지주 시스템 복구 상태 확인
자원 전환대기 시스템으로 자원 및 서비스 전환주 시스템으로 자원 및 서비스 복귀
데이터 동기화장애 시점까지의 데이터 일관성 유지Failover 중 발생한 데이터 변경사항 동기화
IP 관리VIP(Virtual IP) 또는 DNS 업데이트를 통한 라우팅 변경원래 네트워크 구성으로 라우팅 복원
세션 관리사용자 세션 유지 또는 최소한의 영향으로 재설정사용자 세션의 원활한 전환
알림 및 로깅장애 상황 및 Failover 프로세스 기록 및 알림Failback 프로세스 모니터링 및 완료 알림

특징

Failover 와 Failback 은 구현 방식과 특성에 있어 몇 가지 중요한 차이점이 있다.

특징FailoverFailback
발생 시점주 시스템 장애 발생 시주 시스템 복구 후
자동화 수준완전 자동, 반자동, 수동 방식 가능주로 계획된 시점에 수동 또는 반자동
복잡성상대적으로 단순 (미리 준비된 절차)더 복잡 (데이터 동기화, 일관성 확인 필요)
우선순위빠른 전환 속도 우선데이터 일관성 및 안정성 우선
빈도예측 불가능 (장애 발생 시)계획적이고 통제된 환경에서 실행
영향 범위주로 단방향 전환양방향 전환 (데이터 및 설정 동기화)

핵심 원칙

효과적인 Failover 와 Failback 메커니즘 설계를 위한 핵심 원칙들이다.

원칙FailoverFailback
신속성장애 감지 및 전환 시간 최소화계획된 시간 내 안전한 복귀
안정성대기 시스템의 정상 작동 보장주 시스템의 완전한 복구 확인
투명성최종 사용자에게 영향 최소화사용자 경험 저하 없는 전환
일관성데이터 손실 최소화모든 데이터 변경사항 동기화
격리성장애 전파 방지복구 과정의 영향 최소화
검증 가능성정기적인 테스트 수행복구 후 시스템 검증
문서화장애 대응 절차 문서화복구 프로세스 문서화

구조 및 아키텍처

액티브 - 패시브 Failover/Failback 아키텍처:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
[사용자] → [로드 밸런서] → [주 시스템(Active)] → [데이터베이스]
                   ↓            ↑               ↑
                   ↓            |               |
                   ↓            |           [데이터 복제]
                   ↓            |               |
                   └─→ [대기 시스템(Passive)] ──┘
                       
                       [모니터링 시스템]
                          ↑       ↑
                          |       |
                          |       |
                       [주 시스템] [대기 시스템]

액티브 - 액티브 Failover/Failback 아키텍처:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
                [사용자]
              [로드 밸런서]
               ↙        ↘
    [시스템 A(Active)] ⟷ [시스템 B(Active)]
              ↓        ↓
     [데이터베이스 A] ⟷ [데이터베이스 B]
              ↑        ↑
              └────────┘
               데이터 복제

실무 적용 예시

산업Failover 적용 예시Failback 적용 예시특이사항
금융거래 처리 시스템의 자동 Failover 를 통한 무중단 서비스야간 시간대를 활용한 주 데이터센터로의 계획된 FailbackRPO/RTO 가 매우 짧은 요구사항
의료전자 의료 기록 시스템의 실시간 복제 및 Failover데이터 검증 후 단계적 Failback데이터 정확성이 생명과 직결
전자상거래피크 시즌 대비 클라우드 기반 자동 Failover트래픽 패턴 분석 후 점진적 Failback사용자 세션 연속성 중요
제조생산 관리 시스템의 로컬 Failover생산 주기 완료 후 계획된 Failback생산 스케줄과 연계된 전환
통신네트워크 라우팅의 BGP 기반 Failover네트워크 안정성 확인 후 라우팅 복원패킷 손실 최소화 필요
클라우드멀티 AZ 자동 Failover리전 간 데이터 동기화 후 Failback인프라 추상화를 통한 구현
데이터베이스스탠바이 데이터베이스로의 자동 Failover로그 시퀀스 기반 Failback트랜잭션 일관성 보장
웹 서비스CDN 기반 Failover 로 에지 캐시 활용원본 서버 복구 후 캐시 무효화 및 Failback글로벌 배포 고려

활용 사례

데이터베이스 고가용성 시나리오

시나리오 설명: 금융 서비스 회사는 고객 거래 데이터를 처리하는 핵심 데이터베이스 시스템을 운영하고 있다. 이 시스템은 99.999%(5 나인) 가용성을 요구하며, 장애 발생 시 최대 허용 가능한 다운타임은 연간 5.26 분에 불과하다.

Failover 구현: 이 회사는 Oracle Data Guard 를 사용하여 주 데이터베이스 (Primary) 와 대기 데이터베이스 (Standby) 를 구성했다. 두 데이터베이스는 서로 다른 데이터 센터에 위치하여 물리적 재해에도 대응할 수 있다. 동기식 복제를 통해 RPO(Recovery Point Objective) 를 0 에 가깝게 유지하고, Fast-Start Failover 기능을 활성화하여 자동 장애 감지 및 전환을 구현했다.

Failback 프로세스: 주 데이터베이스가 복구된 후, 다음과 같은 Failback 프로세스를 수행한다:

  1. 대기 데이터베이스 (현재 활성) 의 변경 사항을 복구된 주 데이터베이스에 동기화
  2. 동기화 완료 후 데이터 일관성 검증
  3. 낮은 트래픽 시간대 (새벽 2 시) 에 전환 윈도우 설정
  4. 새로운 트랜잭션을 일시적으로 중지 (약 30 초)
  5. 주 데이터베이스로 역할 전환
  6. 애플리케이션 연결 재설정
  7. 모니터링 강화 및 성능 검증

다이어그램:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
[클라이언트 애플리케이션] → [데이터베이스 리스너]
           [로드 밸런서]
           ↙         ↘
[주 DB(Primary)] ⟷ [대기 DB(Standby)]
       ↑                ↓
       |                |
       |    [Observer]  |
       |        ↓       |
       |  [장애 감지]    |
       |        ↓       |
       |  [자동 Failover]|
       |        ↓       |
       |  [Failback 과정]|
       └────────←───────┘

실무에서 효과적으로 적용하기 위한 고려사항 및 주의할 점

고려사항설명
자동화 수준 결정완전 자동화 vs. 반자동 vs. 수동 Failover/Failback 의 적절한 수준 선택
RTO/RPO 요구사항 분석비즈니스 요구사항에 맞는 복구 시간 및 복구 지점 목표 설정
데이터 일관성 확보 방안복제 방식 (동기/비동기), 데이터 검증 메커니즘 구현
네트워크 구성 최적화전용선, 중복 연결, 네트워크 대역폭 확보
모니터링 및 알림 시스템장애 감지의 정확성, 오탐지 방지, 알림 체계 구축
정기적인 테스트 계획Failover/Failback 정기 테스트 및 훈련 계획 수립
문서화 및 절차 표준화장애 대응 및 복구 절차의 명확한 문서화
인적 요소 관리담당자 교육, 책임 분배, 비상 연락망 구축
법적/규제 요구사항 준수산업별 규제 요구사항에 맞는 설계 및 구현
리소스 할당 계획Failover/Failback 중 필요한 추가 리소스 계획

최적화하기 위한 고려사항 및 주의할 점

고려사항설명
복제 지연 최소화데이터 복제 메커니즘 최적화, 네트워크 지연 감소
장애 감지 정확도 향상다중 지표 모니터링, 지능적 임계값 설정, 오탐지 방지
전환 프로세스 최적화불필요한 단계 제거, 자동화 수준 향상, 병렬 처리
세션 관리 전략상태 저장/상태 비저장 설계, 세션 지속성 구현 방안
로드 밸런싱 최적화적절한 알고리즘 선택, 상태 확인 조정, 트래픽 분산
캐시 관리캐시 일관성 유지, 캐시 워밍업, 무효화 전략
애플리케이션 설계장애에 탄력적인 애플리케이션 설계, 재시도 로직
데이터베이스 최적화인덱스 전략, 쿼리 최적화, 연결 풀링
네트워크 최적화대역폭 확보, 라우팅 최적화, 지연 시간 최소화
성능 테스트 자동화정기적인 성능 테스트, 부하 테스트, 복구 시간 측정

주제와 관련하여 추가로 학습해야 할 내용

카테고리주제설명
기초 개념CAP 이론일관성 (Consistency), 가용성 (Availability), 분할 내성 (Partition Tolerance) 간의 trade-off 이해
데이터베이스분산 트랜잭션 관리여러 시스템에 걸친 트랜잭션의 원자성과 일관성 보장 방법
네트워킹BGP 라우팅네트워크 수준의 Failover 를 위한 BGP(Border Gateway Protocol) 활용
클라우드멀티 리전 아키텍처클라우드 환경에서의 리전 간 Failover 및 Failback 설계
보안재해 복구 보안Failover/Failback 프로세스 중 보안 유지 방안
모니터링분산 시스템 모니터링여러 시스템에 걸친 효과적인 상태 모니터링 및 장애 감지
성능지연 시간 최소화Failover/Failback 프로세스의 지연 시간을 최소화하는 기법
아키텍처회복력 있는 시스템 설계장애에 탄력적으로 대응하는 시스템 아키텍처 패턴
개발 방법론카오스 엔지니어링의도적인 장애 주입을 통한 시스템 회복력 테스트
운영SRE(Site Reliability Engineering)구글에서 개발한 고가용성 시스템 운영 방법론

용어 정리

용어설명
RTO(Recovery Time Objective)서비스 중단 시점부터 복구 완료까지 허용되는 최대 시간
RPO(Recovery Point Objective)데이터 손실을 허용하는 최대 기간
VIP(Virtual IP)실제 물리적 서버와 독립적으로 서비스를 식별하는 가상 IP 주소
스플릿 브레인 (Split Brain)두 시스템이 모두 자신을 주 시스템으로 인식하는 상황으로, 데이터 불일치 문제를 야기함
쿼럼 (Quorum)클러스터의 노드 중 과반수가 합의하여 결정을 내리는 메커니즘
액티브 - 패시브 (Active-Passive)하나의 시스템만 작업을 처리하고 다른 시스템은 대기하는 구성
액티브 - 액티브 (Active-Active)모든 시스템이 동시에 작업을 처리하는 구성
웜 스탠바이 (Warm Standby)대기 시스템이 부분적으로 활성화된 상태로 대기하는 구성
콜드 스탠바이 (Cold Standby)대기 시스템이 완전히 꺼져 있거나 최소 상태로 유지되는 구성
헬스 체크 (Health Check)시스템의 상태를 주기적으로 확인하는 메커니즘
VRRP(Virtual Router Redundancy Protocol)라우터의 Failover 를 위한 표준 프로토콜
DNS 페일오버 (DNS Failover)DNS 레코드 변경을 통해 트래픽을 대체 서버로 리디렉션하는 기법
롤백 (Rollback)Failback 과정에서 문제 발생 시 이전 상태로 되돌리는 프로세스
지연 시간 (Latency)시스템 간 데이터 전송 및 처리에 소요되는 시간
데이터 일관성 (Data Consistency)여러 시스템 간에 데이터가 일치하는 상태
하트비트 (Heartbeat)시스템이 정상 작동 중임을 알리는 주기적인 신호
AZ(Availability Zone)클라우드 제공업체의 독립적인 데이터 센터 구역
BCP(Business Continuity Planning)비즈니스 연속성을 위한 계획 수립
DR(Disaster Recovery)재해 발생 후 IT 시스템을 복구하는 과정
다운타임 (Downtime)시스템이 작동하지 않는 시간
고가용성 (High Availability)시스템이 지속적으로 작동하는 능력 (일반적으로 99.9% 이상)
SLA(Service Level Agreement)서비스 수준 계약, 가용성 등에 대한 약속
정족수 (Quorum)클러스터 내에서 결정을 내리기 위해 필요한 최소 노드 수
MTBF평균 고장 간격 시간
Heartbeat시스템 활성 상태 확인 신호

참고 및 출처