0Pricing
Cloud & IT Cert Prep · 강의

확장 정책: 대상 추적 및 단계적 확장

CPU 사용률 목표를 유지하도록 대상 추적을 구성하고 CloudWatch 경보 임계값에 반응하도록 단계적 확장을 구성합니다.

확장 정책: 대상 추적 및 단계적 확장은(는) CoddyKit의 무료 Cloud & IT Cert Prep 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cloud & IT Cert Prep 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.

조정 정책이 필요한 이유

부하가 일정할 때는 정적인 희망 용량으로 충분하지만 실제 트래픽은 변동합니다. 조정 정책을 사용하면 Auto Scaling Group이 지표에 따라 희망 용량을 자동으로 조정할 수 있습니다. AWS는 세 가지 주요 동적 정책 유형인 대상 추적, 단계 조정, 단순 조정을 제공합니다. SAA-C03 시험에서는 대상 추적과 단계 조정을 이해하는 것이 가장 중요합니다.

대상 추적 조정 설명

대상 추적 조정은 온도 조절기처럼 작동합니다. 지표와 목표값을 지정하면 AWS가 지표를 해당 목표값으로 유지하는 데 필요한 인스턴스 추가 또는 제거 개수를 자동으로 계산합니다. 예를 들어 평균 CPU 사용률 50%를 목표로 설정했는데 사용률이 80%까지 올라가면 ASG가 CPU를 다시 50%로 낮추는 데 필요한 만큼 인스턴스를 추가합니다. AWS가 확장과 축소 작업을 모두 관리합니다.

aws autoscaling put-scaling-policy \
  --auto-scaling-group-name 'MyAppASG' \
  --policy-name 'TargetTrackingCPU50' \
  --policy-type TargetTrackingScaling \
  --target-tracking-configuration '{
    "PredefinedMetricSpecification": {
      "PredefinedMetricType": "ASGAverageCPUUtilization"
    },
    "TargetValue": 50.0
  }'

대상 추적의 사전 정의 지표와 사용자 지정 지표

대상 추적은 기본적으로 여러 사전 정의 지표를 지원합니다. ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, 그리고 ALB 전용 ALBRequestCountPerTarget가 이에 해당합니다. 애플리케이션별 핵심 성과 지표(대기열 깊이, 활성 연결 수, 사용자 지정 비즈니스 지표)의 경우 사용자 지정 CloudWatch 지표를 제공할 수 있습니다. 사용자 지정 지표를 사용하면 조정 결정을 유발하는 요소를 훨씬 세밀하게 제어할 수 있습니다.

대상 추적의 냉각 기간

확장 이벤트가 발생한 후 ASG는 다음 확장을 평가하기 전에 냉각 기간(기본값 300초)을 기다립니다. 이렇게 하면 새로 시작된 인스턴스가 트래픽 처리를 시작할 시간을 확보하여 지표가 안정될 수 있습니다. 마찬가지로 축소 냉각 기간은 용량을 추가한 직후 성급하게 인스턴스를 종료하는 것을 방지합니다. 대상 추적의 경우 AWS는 새 인스턴스가 완전히 초기화되기 전에 지표를 왜곡하지 않도록 준비 기간도 사용할 것을 권장합니다.

단계 조정 설명

단계 조정은 지표가 임계값을 얼마나 초과했는지에 따라 특정 개수의 인스턴스를 추가하거나 제거하여 CloudWatch 경보에 대응합니다. 여러 단계 조정을 정의할 수 있으며, 각 단계는 지표 범위를 다루고 용량 변경을 지정합니다. 예를 들어 CPU가 60~70%이면 인스턴스 1개를 추가하고, 70~90%이면 3개를 추가하며, 90%를 초과하면 5개를 추가할 수 있습니다. 이를 통해 다양한 부하 수준에 대해 단계적이고 비례적인 대응을 할 수 있습니다.

단계 조정 정책 생성

단계 조정을 사용하려면 먼저 CloudWatch 경보가 있어야 합니다. 경보는 지표를 모니터링하고 임계값을 넘으면 ALARM 상태로 전환됩니다. 그런 다음 조정 정책은 경보 임계값을 기준으로 한 지표값에 따라 참조된 단계 조정을 사용합니다. 조정 유형은 ChangeInCapacity(N만큼 추가), ExactCapacity(N으로 설정), PercentChangeInCapacity(N%만큼 조정) 중에서 구성할 수 있습니다.

# First create a CloudWatch alarm
aws cloudwatch put-metric-alarm \
  --alarm-name 'HighCPU' \
  --metric-name CPUUtilization \
  --namespace AWS/EC2 \
  --statistic Average \
  --period 60 \
  --threshold 60 \
  --comparison-operator GreaterThanOrEqualToThreshold \
  --dimensions Name=AutoScalingGroupName,Value=MyAppASG \
  --evaluation-periods 2 \
  --alarm-actions 'arn:aws:autoscaling:us-east-1:123456789:scalingPolicy:...'

단계 조정 구성

각 단계 조정에는 MetricIntervalLowerBound가 있고, 선택적으로 MetricIntervalUpperBound가 있습니다. 범위의 경계는 경보 임계값을 기준으로 합니다. 경보 임계값이 CPU 60%인 경우 LowerBound=0, UpperBound=10은 CPU가 60~70%일 때 실행되고, LowerBound=10, UpperBound=null은 CPU가 70%를 초과할 때 실행됩니다. 이러한 계층적 방식은 여러 경보 주기를 기다리는 대신 큰 트래픽 급증에 즉시 큰 용량을 추가하도록 합니다.

# Step scaling policy with two steps
{
  'StepAdjustments': [
    {
      'MetricIntervalLowerBound': 0,
      'MetricIntervalUpperBound': 10,
      'ScalingAdjustment': 2
    },
    {
      'MetricIntervalLowerBound': 10,
      'ScalingAdjustment': 5
    }
  ],
  'AdjustmentType': 'ChangeInCapacity'
}

단순 조정: 이전 방식

단순 조정은 단계 조정의 이전 방식입니다. 단계 조정과 마찬가지로 CloudWatch 경보가 필요하지만, 트리거되면 고정된 개수의 인스턴스를 추가하거나 제거한 다음 전체 냉각 기간이 끝날 때까지 기다린 후 다시 평가합니다. 따라서 부하가 빠르게 변할 때 반응이 느립니다. 단계 조정이 선호됩니다. 전체 냉각 기간을 기다리지 않고 조건이 악화될 때 계속 실행될 수 있으며, 비례적으로 대응하기 때문입니다.

축소 보호와 인스턴스 보호

장시간 실행되는 일괄 작업을 수행하는 인스턴스처럼 축소 중 특정 인스턴스가 종료되지 않도록 해야 할 때가 있습니다. 콘솔이나 CLI를 통해 개별 인스턴스에서 인스턴스 축소 보호를 활성화할 수 있습니다. ASG가 종료 후보를 선택할 때 보호된 인스턴스는 건너뜁니다. 작업이 완료된 후에는 보호를 해제해야 합니다. 모든 인스턴스가 보호된 경우 ASG가 전혀 축소되지 못할 수 있습니다.

aws autoscaling set-instance-protection \
  --auto-scaling-group-name 'MyAppASG' \
  --instance-ids 'i-0abc123def456' \
  --protected-from-scale-in

대상 추적과 단계 조정 결합

하나의 ASG에 여러 조정 정책을 연결할 수 있습니다. 대상 추적 정책과 단계 조정 정책이 모두 있으면 ASG는 더 큰 확장 작업을 권장하는 정책을 사용합니다(가장 보수적인 방식). 축소의 경우에는 가장 적은 인스턴스 제거를 권장하는 정책이 우선됩니다. 이를 통해 시스템이 과도하게 프로비저닝된 상태와 부족하게 프로비저닝된 상태 사이에서 진동하는 것을 방지합니다. 일반적인 방식은 안정적인 상태에는 대상 추적 정책을 사용하고, 긴급한 급증 보호에는 단계 조정 정책을 사용하는 것입니다.

조정 정책 모범 사례

대부분의 웹 애플리케이션에서는 CPU 또는 대상당 요청 수에 대한 대상 추적으로 시작하십시오. 구성이 최소화되고 AWS가 계산을 관리하기 때문입니다. 다양한 부하 강도에 대해 단계적이고 비례적인 대응이 필요할 때는 단계 조정을 사용하십시오. 조정에는 시간이 걸리므로 확장에 의존하지 않고 기준 트래픽을 처리할 수 있을 만큼 최소 용량을 항상 높게 설정하십시오. GroupDesiredCapacity 및 GroupInServiceInstances CloudWatch 지표를 모니터링하여 정책이 예상대로 작동하는지 확인하십시오.

빠른 확인

이 강의에서 다룬 AWS Solutions Architect (SAA-C03) 개념에 대한 이해도를 확인해 보십시오.

강의 요약

이 강의에서는 다음을 배웠습니다. 대상 추적 조정은 지표를 원하는 값(예: CPU 50%)으로 유지하도록 확장 및 축소 작업을 자동으로 계산하고 적용합니다. 단계 조정은 지표가 더 높은 임계값을 넘을수록 CloudWatch 경보 기반 단계 조정을 사용하여 비례적으로 더 크게 대응합니다. 또한 하나의 ASG에서 정책을 결합해도 안전합니다. ASG는 가장 보수적인 확장 권장 사항과 가장 완화된 축소 권장 사항을 사용합니다. 다음으로 알려진 트래픽 패턴을 위한 예약 조정과 예측 조정을 살펴보겠습니다.

자주 묻는 질문

“확장 정책: 대상 추적 및 단계적 확장” 강의는 무료인가요?

네 — “확장 정책: 대상 추적 및 단계적 확장” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cloud & IT Cert Prep 강의 전체를 잠금 해제할 수 있습니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.

“확장 정책: 대상 추적 및 단계적 확장”에서 뭘 배우나요?

CPU 사용률 목표를 유지하도록 대상 추적을 구성하고 CloudWatch 경보 임계값에 반응하도록 단계적 확장을 구성합니다. 브라우저에서 직접 실행하는 실습 코드로 Cloud & IT Cert Prep을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Cloud & IT Cert Prep을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Cloud & IT Cert Prep은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“확장 정책: 대상 추적 및 단계적 확장” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Cloud & IT Cert Prep 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Cloud & IT Cert Prep 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 시작 템플릿 및 ASG 구성
  2. 확장 정책: 대상 추적 및 단계적 확장
  3. 예약된 확장 및 예측 확장
  4. 인스턴스 새로 고침 및 수명 주기 후크
← Cloud & IT Cert Prep(으)로 돌아가기