확장성은 애플리케이션이나 시스템이 증가하는 부하(Load)에 맞춰 적응하고 처리할 수 있는 능력을 의미합니다.
t2.micro → t2.large → m5.xlarge로 업그레이드# AWS CLI로 인스턴스 타입 변경 예시
aws ec2 modify-instance-attribute \
--instance-id i-1234567890abcdef0 \
--instance-type m5.large
적용 사례:
한계점:
u-24tb1.112xlarge - 24TB RAM)# Auto Scaling Group 설정 예시
AutoScalingGroup:
MinSize: 2
MaxSize: 10
DesiredCapacity: 3
TargetGroupARNs:
- !Ref ApplicationLoadBalancer
핵심 AWS 서비스:
고가용성은 시스템 장애 발생 시에도 서비스 중단 없이 운영을 지속할 수 있는 능력입니다.
1. Passive HA (수동 고가용성)
# RDS Multi-AZ 설정
aws rds create-db-instance \
--db-instance-identifier mydb \
--multi-az \
--availability-zone us-east-1a
2. Active HA (능동 고가용성)
# 다중 AZ에 걸친 ASG 설정
AutoScalingGroup:
VPCZoneIdentifier:
- subnet-12345 # us-east-1a
- subnet-67890 # us-east-1b
- subnet-abcde # us-east-1c
| 구분 | 확장성 (Scalability) | 고가용성 (High Availability) |
|---|---|---|
| 목적 | 증가하는 부하 처리 | 장애 상황에서 서비스 지속 |
| 방법 | Scale Up/Out | Multi-AZ 배치 |
| 핵심 서비스 | ASG, ELB | Multi-AZ RDS, ELB |
| 측정 지표 | RPS, Latency | Uptime, MTTR |
함정 주의: 단일 AZ에서 인스턴스를 아무리 많이 늘려도 고가용성은 확보되지 않습니다. 반드시 Multi-AZ가 핵심입니다.