AWS/GCP 오토스케일링 전략
오토스케일링은 트래픽에 따라 서버 인스턴스 수를 자동으로 조절하는 기능입니다. 잘 설계하면 과부하 방지와 비용 절감을 동시에 달성할 수 있습니다.
오토스케일링의 3가지 유형
Section titled “오토스케일링의 3가지 유형”| 유형 | 동작 | 적합한 상황 |
|---|---|---|
| 반응형 (Reactive) | 지표 임계치 초과 시 즉시 스케일 | 예측 불가한 트래픽 |
| 예측형 (Predictive) | 과거 패턴으로 사전 스케일 | 규칙적인 트래픽 패턴 |
| 스케줄형 (Scheduled) | 시간 기반 사전 설정 | 이벤트·점심시간 등 |
AWS Auto Scaling 설정
Section titled “AWS Auto Scaling 설정”EC2 Auto Scaling Group
Section titled “EC2 Auto Scaling Group”# Terraform 예시resource "aws_autoscaling_group" "api" { name = "api-asg" min_size = 2 # 최소 2대 유지 (고가용성) max_size = 20 # 최대 20대 desired_capacity = 3 health_check_type = "ELB" health_check_grace_period = 300
# 스케일 아웃 정책 # CPU 70% 초과 시 인스턴스 추가}
resource "aws_autoscaling_policy" "scale_out" { name = "scale-out" scaling_adjustment = 2 # 한 번에 2대 추가 adjustment_type = "ChangeInCapacity" cooldown = 300 # 5분 쿨다운 autoscaling_group_name = aws_autoscaling_group.api.name}스케일링 지표 선택
Section titled “스케일링 지표 선택”CPU 사용률 → 일반 API 서버에 적합메모리 사용률 → JVM 애플리케이션에 추가로 사용ALB 요청 수 → 요청 기반 스케일에 적합SQS 큐 길이 → 비동기 워커에 적합커스텀 지표 → Prometheus → CloudWatch → Auto ScalingKubernetes HPA (Horizontal Pod Autoscaler)
Section titled “Kubernetes HPA (Horizontal Pod Autoscaler)”apiVersion: autoscaling/v2kind: HorizontalPodAutoscalermetadata: name: api-hpaspec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: api-deployment minReplicas: 2 maxReplicas: 20 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 70 # CPU 70% 기준 - type: Resource resource: name: memory target: type: Utilization averageUtilization: 80Pod 리소스 요청/제한 설정
Section titled “Pod 리소스 요청/제한 설정”HPA가 제대로 동작하려면 반드시 requests를 설정해야 합니다.
resources: requests: cpu: "250m" # 0.25 vCPU — HPA 기준값 memory: "256Mi" limits: cpu: "1000m" # 최대 1 vCPU memory: "512Mi"부하테스트로 스케일링 검증하기
Section titled “부하테스트로 스케일링 검증하기”오토스케일링이 올바르게 동작하는지 반드시 부하테스트로 검증해야 합니다.
1. 초기 상태: min 인스턴스로 시작2. 부하 증가: Stress Test로 CPU 70% 이상 유발3. 검증: 3~5분 내에 인스턴스 추가되는지 확인4. 부하 제거: 쿨다운 후 스케일 인 확인TestForge의 부하테스트 기능으로 이 검증을 자동화할 수 있습니다.
이 가이드를 내 서비스에 직접 적용해 보세요.
TestForge 무료 스캔 시작 →