클라우드활용 12주차 — 고가용성(HA) & Multi-AZ 아키텍처
가용성 계층(9의 개수), 리전/가용영역 구조, ELB·Auto Scaling·RDS Multi-AZ로 단일 장애점을 제거하는 설계를 정리하고 서울 리전 AZ를 조회한 12주차 기록.
12주차는 고가용성(High Availability) 을 다룬다. 가용성 계층(9의 개수), 리전/가용영역(AZ) 구조, ELB·Auto Scaling·RDS Multi-AZ 로 단일 장애점(SPOF)을 제거하는 설계다. 가용성 계산·아키텍처는 개념/강의 화면으로, 리전·AZ 구조는 CLI로 조회했다.
핵심 개념
가용성(Availability)과 “9의 개수”
가용성 %에 따른 연간 허용 다운타임 — 9가 하나 늘 때마다 다운타임이 10분의 1로 줄어든다.
| 가용성 | 연간 다운타임(근사) |
|---|---|
| 99% | 약 3.65일 (87.6시간) |
| 99.9% | 약 8.76시간 |
| 99.99% | 약 52.6분 |
| 99.999% | 약 5.26분 |
SPOF 제거 = 다중화
- SPOF(Single Point of Failure): 하나가 죽으면 전체가 멈추는 지점. 고가용성의 적.
- 리전(Region) / 가용영역(AZ): 한 리전에 물리적으로 분리된 여러 AZ → 여러 AZ에 분산 배치 하면 한 AZ 장애에도 서비스가 유지된다.
- ELB(Elastic Load Balancing): 트래픽을 여러 AZ의 인스턴스로 분산 + 상태 검사로 장애 인스턴스 제외. L4/L7 로드밸런싱, SSL 종료.
- Auto Scaling: 부하/장애에 따라 인스턴스를 자동 증감(자가 치유).
- RDS Multi-AZ: DB를 다른 AZ에 동기 복제 → 장애 시 자동 페일오버.
강의 화면 — ELB
클라이언트의 HTTPS 요청을 ELB가 받아 여러 EC2로 분산 한다(https → ELB → EC2). SSL 종료·중앙 인증 관리, L4/L7 로드밸런싱.
리전/AZ 구조 조회
고가용성의 물리적 토대인 가용영역 을 확인했다.
1
2
3
4
5
6
7
8
9
$ aws ec2 describe-availability-zones --region ap-northeast-2 \
--query "AvailabilityZones[].[ZoneName,ZoneId,State]" --output text
ap-northeast-2a apne2-az1 available
ap-northeast-2b apne2-az2 available
ap-northeast-2c apne2-az3 available
ap-northeast-2d apne2-az4 available # 서울 리전 = 4개 AZ
$ aws ec2 describe-regions --all-regions --query "length(Regions)" --output text
34 # 전 세계 34개 리전
서울 리전에 4개의 독립 AZ 가 있으므로, 인스턴스를 2a·2c 등에 나눠 배치하면 한 AZ가 죽어도 서비스가 유지된다. 5주차에서 띄운 EC2가 ap-northeast-2c(AZ 1개)에만 있었던 것과 대비되는 지점으로, 실서비스라면 여러 AZ + ELB로 묶는다.
정리
“고가용성”은 추상적 구호가 아니라 9의 개수 → 연간 다운타임 으로 정의된다(99% = 연 3.65일 정지, 99.999% = 5분). 핵심은 SPOF 제거 = 다중화 이며, describe-availability-zones 로 서울에 4개 AZ가 있음을 확인했다. ELB(분산)·Auto Scaling(자가 치유)·RDS Multi-AZ(DB 페일오버)가 각 계층의 가용성을 담당하는데, 이는 Well-Architected의 “안정성” 기둥을 실현하는 방법이다. 단일 계정·프리티어 범위라 ELB/Multi-AZ를 실제 과금 구성으로 띄우지는 않고 구조 조회와 강의 화면으로 정리했다.