RTO, RPO 및 MTTR: 복구 목표 정의
업무 영향 분석과 SLA 요구 사항을 바탕으로 복구 시간 목표, 복구 시점 목표, 평균 복구 시간을 계산합니다.
RTO, RPO 및 MTTR: 복구 목표 정의은(는) CoddyKit의 무료 Cloud & IT Cert Prep 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cloud & IT Cert Prep 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.
복구 지표가 중요한 이유
구체적이고 측정 가능한 복구 목표가 없으면 적절한 백업 전략을 설계하거나, 적합한 DR 사이트 등급을 선택하거나, 복구 기술 투자가 타당한지 평가할 수 없습니다. RTO, RPO, MTTR은 비즈니스 가용성 요구 사항을 정밀한 엔지니어링 목표로 변환합니다. 이러한 지표를 통해 보안 및 IT 팀은 downtime 비용과 DR 투자 비용을 근거를 바탕으로 경영진과 논의할 수 있으므로, 비즈니스 타당성을 추상적인 설명이 아닌 구체적인 내용으로 제시할 수 있습니다.
복구 시간 목표(RTO)
복구 시간 목표(RTO)는 중단이 시작된 시점부터 정상 Service가 복구될 때까지 허용되는 최대 시간입니다. 중요한 Payment 시스템이 오전 10시에 실패했고 비즈니스가 수용할 수 없는 매출 손실이나 SLA 위반이 발생하기 전까지 최대 2시간의 downtime만 감수할 수 있다면 RTO는 2시간입니다. 즉 늦어도 오후 12시까지 시스템을 복구해야 합니다. RTO는 DR 사이트 등급(15분 RTO에는 Hot 사이트, 48시간 RTO에는 Cold 사이트), Replication 빈도, 장애 조치 자동화에 관한 선택을 결정합니다.
# RTO examples by system criticality:
# System | RTO (max tolerable downtime)
# Payment gateway | 15 minutes
# Core banking | 1 hour
# Order management | 2 hours
# Employee HR system | 4 hours
# Marketing analytics | 24 hours
# Historical archive | 72 hours
# Shorter RTO = higher cost (hot site, active-active,
# auto-failover, frequent replication)복구 시점 목표(RPO)
복구 시점 목표(RPO)는 시간으로 측정한 허용 가능한 최대 데이터 손실, 즉 재해 발생 시 감수할 수 있는 데이터 손실의 범위입니다. RPO가 1시간이라는 것은 시스템이 복구되었을 때 재해 발생 시점보다 1시간 이상 이전의 데이터만 포함해서는 안 된다는 뜻입니다. RPO는 백업 빈도를 결정합니다. 1시간 RPO에는 최소한 Hourly 백업 또는 지속적인 Replication이 필요합니다. 4시간 RPO는 4시간 간격의 백업을 허용할 수 있습니다. RPO는 데이터 복구에 관한 것이고, RTO는 Service 가용성 복구에 관한 것입니다.
# RPO implications for backup design:
# RPO: 24 hours -> Daily backup is sufficient
# Data loss risk: up to 23h59m of transactions
# RPO: 4 hours -> Every 4 hours incremental backup needed
# Data loss risk: up to 3h59m of transactions
# RPO: 1 hour -> Hourly snapshot or log shipping required
# Data loss risk: up to 59 minutes of transactions
# RPO: 0 (zero data loss) -> Synchronous replication required
# Data written to two locations simultaneously before ACK
# Higher latency + higher costRTO와 RPO: 서로 다른 두 질문
RTO와 RPO는 복구의 서로 다른 측면을 다루므로 독립적으로 정의해야 합니다. 시스템은 엄격한 RPO(1시간, 즉 데이터가 자주 Replication됨)와 완화된 RTO(4시간, 즉 데이터가 최신 상태여도 DR 환경을 구동하는 데 시간이 걸림)를 동시에 가질 수 있습니다. 반대로 완화된 RPO(24시간, 즉 Nightly 백업으로 충분)와 엄격한 RTO(1시간 내 장애 조치 필요)를 가질 수도 있습니다. 이 경우 즉시 활성화할 수 있도록 사전에 provisioned된 DR 환경이 준비되어 있어야 합니다. 두 지표 모두 비즈니스 영향 분석에서 도출됩니다.
# RTO vs RPO scenario:
# System: Customer Service CRM
# RTO: 1 hour (sales team cannot work without it)
# RPO: 4 hours (losing 4 hours of call notes acceptable)
# DR solution:
# - Hot standby environment pre-provisioned (meets 1hr RTO)
# - Replication every 4 hours to standby (meets 4hr RPO)
# - Nightly backup is NOT enough (misses 1hr RTO)
# - Synchronous replication NOT needed (RPO allows 4hr loss)
# Cost optimization: match solution to actual RTO/RPO,
# not to most expensive option available평균 복구 시간(MTTR)
평균 복구 시간(MTTR)은 incident 발생 후 Service를 복구하는 데 실제로 걸린 평균 시간, 즉 복구 성능을 운영 측면에서 측정한 값입니다. RTO가 허용 가능한 최대 downtime(목표/요구 사항)라면 MTTR은 관찰된 평균값(실제 성능)입니다. 조직은 시간 경과에 따른 여러 incident의 MTTR을 측정하고 RTO와 비교하여 복구 역량을 평가합니다. MTTR이 지속적으로 RTO를 초과한다는 것은 DR 역량이 충분하지 않으며 자동화, 인력 또는 인프라에 대한 투자가 필요하다는 뜻입니다.
# MTTR calculation:
# Incident log for Q1:
# Incident 1: Outage 2h15m, restored in 1h45m
# Incident 2: Outage 45m, restored in 30m
# Incident 3: Outage 4h00m, restored in 3h20m
# Incident 4: Outage 1h30m, restored in 1h10m
# Total recovery time: 1h45m + 30m + 3h20m + 1h10m = 6h45m
# Number of incidents: 4
# MTTR = 6h45m / 4 = 1h41m average recovery time
# If RTO = 2 hours: MTTR is within target
# If RTO = 1 hour: MTTR exceeds target -> action required평균 장애 간격(MTBF)
평균 장애 간격(MTBF)은 시스템의 신뢰성을 측정하는 값으로, 시스템이 장애와 장애 사이에 작동하는 평균 시간입니다. Higher MTBF는 더 나은 신뢰성을 나타냅니다. MTBF와 MTTR은 함께 시스템의 가용성 백분율을 결정합니다. Availability = MTBF / (MTBF + MTTR). MTBF가 2000시간이고 MTTR이 2시간인 시스템의 Availability는 2000/2002 = 99.9%입니다. MTBF를 이해하면 장애가 발생할 가능성이 높은 시점을 예측하고 그에 맞춰 유지 관리 기간을 계획할 수 있습니다. MTBF가 감소하는 Hardware는 수명 종료 시점에 가까워지고 있으므로 사전에 교체해야 합니다.
# Availability calculation:
# MTBF = 2000 hours (mean time between failures)
# MTTR = 2 hours (mean time to recover)
# Availability = MTBF / (MTBF + MTTR)
# = 2000 / (2000 + 2)
# = 2000 / 2002
# = 0.999 = 99.9%
# Downtime per year at 99.9%: 8.76 hours/year
# To achieve 99.99% (four nines):
# MTBF / (MTBF + MTTR) >= 0.9999
# With MTTR = 2 hours: MTBF must be >= 19,998 hours최대 허용 downtime(MTD)
최대 허용 downtime(MTD)은 비즈니스가 돌이킬 수 없는 피해를 입기 전에 시스템을 사용할 수 없는 상태로 둘 수 있는 절대적인 최대 시간입니다. 피해에는 고객 손실, 규제 처벌, 계약상 의무를 이행할 수 없는 상황 등이 포함됩니다. MTD는 항상 RTO보다 크거나 같습니다. 관계를 정리하면 MTD는 비즈니스의 한계이고 RTO는 IT 목표입니다. 계약상 SLA 위반이 4시간 지속되면 처벌이 시작되는 경우 MTD는 4시간일 수 있습니다. IT 팀은 MTD에 도달하기 전에 안전 여유를 확보하도록 1~2시간의 RTO를 설계합니다.
Service 수준 계약과 복구 지표
Service 수준 계약(SLA)은 고객에 대한 계약상 약속을 정의하며 RTO 및 RPO 요구 사항에 직접적인 정보를 제공합니다. 99.95% Uptime을 약속하는 Cloud 제공업체의 SLA는 연간 약 4.4시간의 downtime을 허용합니다. SLA 위반 시 Service 크레딧이나 계약 해지 권리가 발생합니다. IT와 비즈니스 부서 간의 내부 SLA도 이와 유사하게 작동합니다. 실제 downtime이 SLA 약속 범위 내에 유지되도록 RTO와 RPO를 설계해야 하며, 준수 여부를 입증하기 위해 MTTR을 측정하고 보고해야 합니다.
# Uptime percentage to downtime conversion:
# 99% = 3.65 days/year downtime
# 99.9% = 8.77 hours/year downtime
# 99.95% = 4.38 hours/year downtime
# 99.99% = 52.6 minutes/year downtime
# 99.999% = 5.26 minutes/year downtime (five nines)
# SLA commitment: 99.95% (4.38 hours/year max downtime)
# RTO design target: 1 hour per incident (safety margin)
# MTTR measurement: 45 minutes average (within target)
# Max incidents at 1hr RTO staying within SLA: ~4 per year복구 목표를 충족하도록 시스템 설계
기술 선택은 RTO 및 RPO 요구 사항에 따라 직접 결정됩니다. 15분 RTO와 RPO 0에는 동기식 Replication을 사용하는 Active-Active 클러스터링이 필요합니다. 즉 데이터 손실이 없고 자동으로 장애 조치가 이루어져야 합니다. 4시간 RTO와 1시간 RPO에는 Warm standby로의 로그 전송 또는 비동기식 Replication을 사용할 수 있습니다. 24시간 RTO와 24시간 RPO에는 Cold 저장소에 대한 Daily 백업을 사용할 수 있습니다. 요구 사항보다 높은 복원력을 설계하면 예산이 낭비되고, 낮은 복원력을 설계하면 incident 발생 시 용납할 수 없는 비즈니스 위험이 발생합니다.
테스트를 통한 복구 목표 검증
복구 목표는 정기적인 테스트를 통해 검증될 때만 유효합니다. 조직은 실제 MTTR을 측정하고 실제 데이터 복구 시점을 확인하는 복구 테스트를 수행해야 합니다(복원되었을 때 데이터가 얼마나 오래된 것인지 확인). 테스트 결과 MTTR이 RTO 1시간에 비해 지속적으로 3시간으로 나타난다면, 그 격차를 해결해야 합니다. DR 인프라를 개선하거나(자동화, 사전 프로비저닝), 업데이트된 BIA를 통해 비즈니스의 기대치를 재설정해야 합니다. 테스트 빈도는 중요도에 맞춰야 합니다. CRITICAL 시스템은 분기별로, 그 외 시스템은 매년 테스트해야 합니다.
이해관계자에게 복구 지표 전달
RTO, RPO, MTTR 보고서는 비즈니스 이해관계자가 이해할 수 있는 용어로 전달해야 합니다. 'Tier 1 시스템의 MTTR은 47분입니다'라고 말하기보다는, '가장 중요한 시스템에 장애가 발생하면 평균 1시간 이내에 서비스를 복구합니다. 이는 계약상 허용된 2시간 이내입니다'라고 설명해야 합니다. 정기적인 보고는 이해관계자의 신뢰를 높이고 조직의 복원력 상태에 대한 공통된 이해를 형성합니다. 시간에 따른 MTTR 추세를 대시보드로 보고하면 프로그램의 개선을 보여 주고 DR 투자 예산의 타당성을 뒷받침할 수 있습니다.
빠른 확인
이 lesson에서 다룬 CompTIA Security+ (SY0-701) 개념에 대한 이해도를 확인해 보십시오.
lesson 요약
이 lesson에서는 다음을 배웠습니다. RTO는 서비스를 중단할 수 있는 최대 시간으로, 페일오버 속도 요구 사항을 결정합니다. RPO는 허용 가능한 최대 데이터 손실량으로, backup 및 복제 빈도를 결정합니다. 또한 MTTR은 실제 평균 복구 시간을 측정한 값으로, DR 프로그램의 효과를 평가하기 위해 RTO와 비교합니다. 다음에는 backup 전략인 3-2-1 규칙과 Ransomware가 파괴할 수 없는 불변 backup을 살펴봅니다.
자주 묻는 질문
“RTO, RPO 및 MTTR: 복구 목표 정의” 강의는 무료인가요?
네 — “RTO, RPO 및 MTTR: 복구 목표 정의” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cloud & IT Cert Prep 강의 전체를 잠금 해제할 수 있습니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.
“RTO, RPO 및 MTTR: 복구 목표 정의”에서 뭘 배우나요?
업무 영향 분석과 SLA 요구 사항을 바탕으로 복구 시간 목표, 복구 시점 목표, 평균 복구 시간을 계산합니다. 브라우저에서 직접 실행하는 실습 코드로 Cloud & IT Cert Prep을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Cloud & IT Cert Prep을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Cloud & IT Cert Prep은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“RTO, RPO 및 MTTR: 복구 목표 정의” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Cloud & IT Cert Prep 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Cloud & IT Cert Prep 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- BCP와 DRP: 중단 및 복구 계획
- RTO, RPO 및 MTTR: 복구 목표 정의
- 백업 전략: 3-2-1 규칙 및 변경 불가능한 백업
- 장애 조치 테스트: 도상 훈련 및 DR 모의 훈련