장애 조치 자동화 단계

OwlDB는 DR로 구성된 Primary 데이터베이스의 상태를 지속적으로 모니터링하여 장애 상황을 감지합니다. 시스템은 1초마다 health check를 수행하며, 모든 Primary DB 노드가 Unavailable 상태로 30초동안 지속될 경우, 자동으로 장애 조치가 수행됩니다.

단계별 알림 정책

구분
Standby 승격
구성 정상화

수행 시점

장애 감지 직후

Standby 승격 이후

알림

시작 / 요청 실패 / 완료 / 실패

완료 / 실패

전환 이력 관리

Standby 승격성공 여부 : 결과 컬럼에 표시

  • 성공 / 실패

  • standby가 승격하여 새로운 primary가 된 것을 기준으로 성공 여부를 정의

원인/비고 컬럼

  • 전체 성공 시 빈칸

  • Standby 승격 실패 : Standby Promotion Failed

  • Standby 승격성공 후 구상정상화 실패 시 : Cluster Normalization Failed: Primary scale out failed 혹은 New standby creation failed

    • (둘 다 실패하면 콤마로 표시)

장애 조치 자동화 단계별 동작 요약

자동화 레벨
Failover
구성 정상화
사용자 개입

0단계(수동)

필수 → 역할전환 버튼으로 수행

(수행 시 2단계 진행)

1단계(자동 장애 조치)

✔️

✔️ (Scale-Out)

  • retired(old primary) 처리

2단계(자동 구성 복구)

✔️

✔️ (Rebuild/Scale-Out)

  • retired(old primary) 처리

  • standby 추가 생성

3단계(완전 자동화)

✔️

✔️ (Rebuild/Scale-Out)

circle-info

참고 기존 primary cluster가 TAC인 경우, 구성 복구를 위하여 Scale-out을 수행하여 new primary cluster도 TAC 구성으로 복구됩니다.

circle-info

참고 1, 2단계의 경우 Primary Cluster가 비정상 종료되면 Standby로 전송 되지 않은 로그가 있을 수 있습니다. 데이터 일관성을 보장할 수 없고, Split-Brain 현상을 방지하기 위해 retired 상태로 처리됩니다.

circle-exclamation

라이선스 유형별 자동화 제공 범위

LI
BYOL

0 - 3 단계

0, 2, 3단계 (1단계 미제공)

자동화 단계별 상세 시나리오

circle-info

참고

토폴로지 상태 판별 기준

Standby 승격 이후 구성 정상화 상태는 토폴로지 방식과 동일한 형상인지를 기준으로 판별합니다.

  1. Primary가 TAC(Tibero Active Cluster) 구성인 경우

    Failover 이후에도 Scale-out을 수행하여 TAC 구조를 유지하고 있는지 확인합니다.

    • Primary Node 개수가 2개 이상인 경우: Running 상태

    • Primary Node 개수가 2개 미만인 경우: Degraded 상태

  2. DR(Disaster Recovery) 구성인 경우

    Standby를 보유하고 있는지 확인합니다.

    • Standby 개수가 1개 이상인 경우: Running 상태

      • 단, Standby 개수는 충족하나 Standby가 비정상 상태인 경우에는 Degraded 상태일 수 있습니다.

    • Standby 개수가 0개인 경우: Degraded 상태

1단계: 자동 장애 조치

  • Old Primary는 재기동하지 않고 종료되며, 신규 Standby를 생성하지 않습니다.

단계
주요 동작
상태
시스템 알림
  1. 장애 감지

Auto Failover 요청 전송

Failover

  • Auto Failover 시작

  • 요청 실패하는 경우 “Auto Failover 요청 실패

  1. Standby 승격

TSN이 가장 높은 Standby를 Primary로 승격

-

  1. new Primary 구성 변경

TAC인 경우 Scale Out 수행

Updating

  • new Primary DB 사용 가능

“Auto Failover 완료

  • 실패 시 “Auto Failover 실패

  1. Old Primary 처리

Retired 상태로 표시 후 EC2 종료

-

  1. 완료

구성 정상화 완료

Degraded

  • "구성 정상화 완료

  • 실패 시, “구성 정상화 실패

2단계: 자동 구성 복구

  • 신규 Standby를 자동으로 생성하여 고가용성 구성을 복구합니다.

단계
주요 동작
상태
시스템 알림
  1. 장애 감지

Auto Failover 요청 전송

Failover

  • Auto Failover 시작

  • 요청 실패하는 경우 “Auto Failover 요청 실패

  1. Standby 승격

TSN이 가장 높은 Standby를 Primary로 승격

-

  1. new Primary 구성 변경

TAC인 경우 Scale Out 수행 (라이선스 이관 포함)

Updating

  • new Primary DB 사용 가능

“Auto Failover 완료

  • 실패 시 “Auto Failover 실패

  1. Old Primary 처리

Retired 상태로 표시 후 EC2 종료

-

  1. 신규 Standby 생성

Old Primary가 위치한 AZ에 동일 스펙으로 생성

-

  1. Standby 연결 및 동기화

-

  1. 완료

구성 정상화 완료

Running / Degraded

  • "구성 정상화 완료

  • 실패 시, “구성 정상화 실패

3단계: 완전 자동화

단계
주요 동작
상태
시스템 알림
  1. 장애 감지

Auto Failover 요청 전송

Failover

  • Auto Failover 시작

  • 요청 실패하는 경우 “Auto Failover 요청 실패

  1. Old Primary 재기동 시도

EC2 재기동 후 DB 재기동 시도 (실패 시 삭제)

-

  1. Standby 승격

TSN이 가장 높은 Standby를 Primary로 승격

-

  1. new Primary 구성 변경

TAC인 경우 Scale Out 수행

Updating

  • new Primary DB 사용 가능

“Auto Failover 완료

  • 실패 시 “Auto Failover 실패

5. 역동기화 시도

  • 재기동 성공시 Old Primary를 Standby로 연결 → 8.완료

  • 재기동 실패시 해당 인스턴스 삭제

-

  1. 신규 Standby 생성

Old Primary가 위치한 AZ에 동일 스펙으로 생성

-

  1. Standby 연결 및 동기화

-

  1. 완료

구성 정상화 완료

Running / Degraded

  • "구성 정상화 완료

  • 실패 시, “구성 정상화 실패

Last updated