고가용성(HA) 란?

HelloPong·2025년 8월 4일

공부

목록 보기
11/39
post-thumbnail

🔁 고가용성(High Availability, HA)이란 무엇인가?

시스템이 장애 상황에서도 멈추지 않고 계속 동작하도록 만드는 설계 방식,
그것이 바로 고가용성(HA) 입니다.


🔰 1. 개요: 왜 고가용성이 중요한가?

현대의 웹 서비스는 24시간 365일 동작해야 합니다.
카카오톡이 10분 멈추면 뉴스에 나오고, 결제 시스템이 멈추면 기업 손해는 수천만 원에 달하죠.

✅ 그래서 고가용성(HA)은
장애를 견디고, 사용자에게 영향을 주지 않는 시스템”을 만들기 위한 핵심 설계 전략입니다.


🧠 2. 고가용성의 정의와 개념

📘 고가용성(High Availability)이란?

장애가 발생해도 서비스가 지속적으로 이용 가능하도록 시스템을 구성하는 것

HA 시스템은 다음 3가지를 갖추고 있어야 합니다:

요소설명
이중화(Redundancy)서버, 네트워크, DB 등을 복수로 구성
자동 전환(Failover)장애 감지 시 대기 중인 시스템이 자동으로 대체
장애 감지(Heartbeat)시스템 간 상태 체크로 빠르게 전환 시점 판단

📊 3. 실무에서 보는 HA 구성 예시

📌 예시 구조: 웹 서비스 고가용성 구성

[User]
↓
[Load Balancer]
↓ ↓
[WAS 1] [WAS 2] ← Active-Passive or Active-Active
↓ ↓
[DB Master] [DB Slave]
  • 로드밸런서: 장애난 서버로는 트래픽을 보내지 않음
  • WAS 이중화: 서버 한 대가 죽어도 다른 서버가 서비스 유지
  • DB 복제: Master 장애 시 Slave가 Failover로 전환

📈 4. 가용성 수치로 보는 "얼마나 살아있어야 하나?"

가용성 (%)연간 다운타임월간 다운타임
99%약 3.65일약 7시간 18분
99.9%약 8시간 46분약 43분
99.99%약 52분약 4.3분
99.999%약 5분약 26초

🎯 대부분의 클라우드 서비스 SLA는 99.9% 이상,
금융·통신 분야는 99.99% 이상을 목표로 설계합니다.


⚠️ 5. 고가용성의 오해와 주의점

오해진실
“서버 하나 더 두면 되지 않나?”Failover, Health Check, 데이터 동기화 등 설계가 핵심
“클라우드 쓰면 다 되겠지”기본 구성만으로는 HA 보장 안 됨. 설정과 구조가 중요
“장애 나도 바로 복구하면 되잖아”사용자가 영향을 받으면 이미 고가용성 실패

✅ 6. 요약

고가용성(HA)은 단순히 "죽지 않는 시스템"이 아니라,
장애 상황을 예상하고, 무중단으로 대처할 수 있도록 설계된 시스템을 의미합니다.

💡 키포인트 요약

  • HA는 가용성 보장(Availability)을 위한 설계 철학
  • 핵심은 이중화 + 자동 전환(Failover) + 헬스체크
  • AWS, Redis, Kubernetes 등 실무 시스템에서 모두 사용
  • 잘못 설계된 HA는 장애를 "오히려 확대"시킬 수도 있음

0개의 댓글