적정 규모 조정 및 Compute Optimizer
AWS Compute Optimizer 권장 사항을 사용해 과도하게 프로비저닝된 EC2 인스턴스, Lambda 함수 및 EBS 볼륨의 규모를 줄여 비용을 낮춥니다.
적정 규모 조정 및 Compute Optimizer은(는) CoddyKit의 무료 AWS Solutions Architect 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AWS Solutions Architect 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AWS Solutions Architect 강의에는 총 4개의 강의가 포함되어 있습니다.
과다 프로비저닝 문제
클라우드 아키텍처에서 가장 흔하고 비용이 많이 드는 실수 중 하나는 워크로드에 실제로 필요한 것보다 많은 리소스를 할당하는 과다 프로비저닝입니다. IT 팀은 온프레미스 환경의 습관(최대 부하를 기준으로 용량 구매), 성능 저하에 대한 우려, 또는 초기 규모 설정 결정을 한 번도 검토하지 않았다는 이유로 과다 프로비저닝을 하는 경우가 많습니다. AWS에서는 과다 프로비저닝된 EC2 인스턴스, EBS 볼륨, Lambda 함수가 실행되는 매 순간 비용을 낭비합니다. 적정 규모 설정은 이러한 낭비를 찾아 제거하는 체계적인 프로세스입니다.
# Common over-provisioning symptoms:
# EC2: average CPU < 10%, memory < 20%
# RDS: storage auto-grow never triggered
# Lambda: allocated memory rarely exceeds 40%
# EBS: provisioned IOPS consistently unused
# Cost impact example:
# Over-provisioned r5.8xlarge at $1.92/hr: $1,382/month
# Correct size r5.xlarge at $0.252/hr: $181/month
# Savings: $1,201/month per instanceAWS Compute Optimizer 개요
AWS Compute Optimizer는 CloudWatch의 과거 utilizationMetrics를 분석하고 머신 러닝을 사용하여 최적의 AWS 컴퓨팅 리소스를 추천합니다. 대상에는 EC2 인스턴스, EC2 autoScalingGroup, EBS 볼륨, Lambda 함수, Amazon ECS on Fargate가 포함됩니다. Compute Optimizer가 신뢰도 높은 추천을 생성하려면 최소 30일의 지표 기록이 필요합니다. 활성화 비용은 무료이며, 예상 월간 절감액과 변경에 따른 위험 등급을 포함한 추천을 제공합니다.
# Opt in to Compute Optimizer
aws compute-optimizer update-enrollment-status \
--status Active
# Get EC2 recommendations
aws compute-optimizer get-ec2-instance-recommendations \
--query 'instanceRecommendations[].{Instance:currentInstanceType,Recommended:recommendationOptions[0].instanceType,Savings:recommendationOptions[0].estimatedMonthlySavings.value,Risk:recommendationOptions[0].performanceRisk}'
# Get Lambda recommendations
aws compute-optimizer get-lambda-function-recommendationsCompute Optimizer를 사용한 EC2 적정 규모 설정
Compute Optimizer는 지난 3일, 14일 또는 30일 이상의 기간 동안 EC2의 CPU utilization, 메모리 utilization(CloudWatch 에이전트를 통해 수집), 네트워크 처리량, EBS IOPS를 분석합니다. 그런 다음 네 가지 finding 중 하나를 추천합니다. Optimized(현재 크기가 적절함), 과다 프로비저닝됨(크기를 줄일 수 있음), Under-provisioned(크기를 늘려야 함), 또는 최적화되지 않음(데이터 부족)입니다. performanceRisk를 항상 검토하십시오. Compute Optimizer는 각 추천에 VeryLow, Low, Medium, High 위험 등급을 지정합니다.
# EC2 recommendation findings:
# Finding: OVER_PROVISIONED
# CurrentInstanceType: m5.4xlarge
# RecommendedInstanceType: m5.xlarge
# CPU utilisation: P99 = 22%, P50 = 4%
# Memory utilisation: P99 = 18%, P50 = 8%
# EstimatedMonthlySavings: $380
# PerformanceRisk: VeryLow
# Always check:
# - Does current instance have burstable credits? (T3)
# - Are there workload spikes not captured in averages?
# - Is there seasonality to consider?Lambda 적정 규모 설정
Lambda 함수는 실행 시간(밀리초)에 할당된 메모리를 곱한 값을 기준으로 과금됩니다. 필요한 것보다 많은 메모리를 할당하면 비용이 낭비되지만, 메모리가 많을수록 CPU도 증가합니다. 따라서 적절한 균형점은 호출당 비용이 최소화되는 메모리 설정입니다. Compute Optimizer는 Lambda 호출 기간, 오류율, timeout 지표를 분석하여 최적의 메모리 설정을 추천합니다. 오픈 소스 Lambda Power Tuning 도구를 사용하면 다양한 메모리 설정으로 함수를 호출하여 비용 측면에서 최적인 구성을 실제로 찾아볼 수도 있습니다.
# Compute Optimizer Lambda recommendations
aws compute-optimizer get-lambda-function-recommendations \
--function-arns arn:aws:lambda:us-east-1:123:function:my-function
# Response shows:
# currentMemorySize: 1024 MB
# recommendedMemorySize: 256 MB
# utilizationMetrics:
# - type: MEMORY_MAXIMUM, value: 89 (MB)
# estimatedMonthlySavings: $45
# 89 MB actual vs 1024 MB allocated = 935 MB wastedEBS 볼륨 적정 규모 설정
EBS 볼륨은 크기(사용하지 않는 디스크 공간)와 IOPS(실제로 사용되지 않는 프로비저닝된 IOPS) 양쪽에서 과다 프로비저닝되는 경우가 많습니다. Compute Optimizer는 VolumeReadOps, VolumeWriteOps, VolumeReadBytes, VolumeWriteBytes 지표를 분석합니다. 일반적인 추천은 gp2에서 gp3로 마이그레이션하는 것입니다. gp3는 크기와 IOPS를 분리하므로 IOPS를 독립적으로 적정 규모로 설정할 수 있으며, 이를 통해 대개 20%를 절감할 수 있습니다. 또한 연결되지 않은 EBS 볼륨(인스턴스는 종료되었지만 볼륨이 남아 있는 경우)을 식별하여 스냅샷을 생성하거나 삭제하십시오.
# Get EBS volume recommendations
aws compute-optimizer get-ebs-volume-recommendations \
--volume-arns arn:aws:ec2:us-east-1:123:volume/vol-12345
# Common finding: gp2 -> gp3 migration
# gp2: 500 GB = 500 GB * $0.10 = $50/month
# IOPS: 1,500 (3 IOPS/GB, not configurable)
# gp3: 500 GB = $40/month + 3,000 IOPS free
# Save $10/month plus get MORE baseline IOPS
# Find unattached EBS volumes
aws ec2 describe-volumes \
--filters Name=status,Values=available \
--query 'Volumes[].{VolumeId:VolumeId,Size:Size,Created:CreateTime}'autoScalingGroup 추천
Compute Optimizer는 그룹 전체 인스턴스의 ASG utilization을 분석하고 인스턴스 유형에 대한 시작 템플릿 변경 사항을 추천합니다. ASG의 모든 인스턴스가 지속적으로 과다 프로비저닝된 경우 더 작은 인스턴스 유형으로 전환하면 규모에 따라 비용을 줄일 수 있습니다. 예를 들어 ASG가 평균적으로 m5.large 인스턴스 10개를 사용한다면 m5.medium으로 전환하여 인스턴스당 50%를 절감할 수 있습니다. 소프트웨어가 호환되는 경우 Compute Optimizer는 Graviton 기반 인스턴스도 추천하며, 성능 향상과 비용 절감을 모두 제공합니다.
# Get ASG recommendations
aws compute-optimizer get-auto-scaling-group-recommendations \
--auto-scaling-group-arns arn:aws:autoscaling:us-east-1:123:autoScalingGroup:abc:autoScalingGroupName/my-asg
# If recommendation is to switch to Graviton:
# Current: m5.large (x86, $0.096/hr)
# Recommended: m6g.large (Graviton2, $0.077/hr)
# Savings: 20% per instance
# ASG at 10 instances average = $220/month savings비용 분석을 위한 Trusted Advisor
AWS Trusted Advisor는 보안, 성능, 내결함성, 서비스 한도 점검과 함께 Cost Optimisation 분석 정보를 제공하는 또 다른 도구입니다. 주요 비용 점검 항목은 다음과 같습니다. Low Utilization EC2 Instances(4일 이상 CPU가 10% 미만인 인스턴스), Unassociated Elastic IP Addresses(연결되지 않은 상태에서 요금이 부과됨), Underutilized EBS Volumes, Idle Load Balancers(정상 대상이 없음), Unused Reserved Instances. Trusted Advisor의 기본 점검은 무료이며, 전체 점검 항목을 사용하려면 Business 또는 Enterprise Support가 필요합니다.
# Trusted Advisor: get cost optimisation checks
aws support describe-trusted-advisor-checks \
--language en \
--query 'checks[?category==`cost_optimizing`].{Name:name,Id:id}'
# Key checks:
# Qkj5MU5fNp: Low utilisation EC2 instances
# Z4AUBRNSmh: Unassociated Elastic IP addresses
# DAvU99Dc4C: Underutilized EBS volumes
# hjLMh88uM8: Idle load balancers
# 1e93e4c0b5: Unused reserved instances인스턴스 세대 업그레이드
AWS는 더 낮거나 동일한 비용으로 향상된 성능을 제공하는, 더욱 효율적인 EC2 새 인스턴스 세대를 정기적으로 출시합니다. 5세대(m5, c5, r5)에서 7세대(m7g, c7g, r7g)로 이동하면 비슷하거나 더 낮은 비용으로 컴퓨팅 성능을 40% 향상할 수 있습니다. Compute Optimizer는 Graviton 기반 인스턴스를 포함하여 최신 세대로 업그레이드할 기회를 구체적으로 표시합니다. 인스턴스 업그레이드는 동일한 구성에서 더 새로운 하드웨어, 향상된 성능, 낮은 비용을 얻을 수 있는 가장 간단한 적정 규모 설정 방법인 경우가 많습니다.
# EC2 instance generation comparison (same price tier):
# m5.large: 2 vCPU, 8 GB, $0.096/hr (2019)
# m6i.large: 2 vCPU, 8 GB, $0.096/hr (2021, ~10% faster)
# m7i.large: 2 vCPU, 8 GB, $0.1008/hr (2023, ~15% faster)
# m7g.large: 2 vCPU, 8 GB, $0.0808/hr (2023, Graviton3, cheapest)
# Upgrade path for Linux workloads:
# m5 -> m7g (Graviton): best price/performance
# m5 -> m7i: same architecture, no code changesRDS 인스턴스 적정 규모 설정
RDS 인스턴스는 비용이 높고 과다 프로비저닝되는 경우가 많습니다. CloudWatch 지표를 사용하여 RDS utilization을 평가하십시오. CPUUtilization, FreeableMemory, ReadIOPS, WriteIOPS를 확인할 수 있습니다. CPU가 20% 미만으로 유지되고 메모리가 지속적으로 충분한 상태라면 규모를 줄이는 것을 고려하십시오. Multi-AZ를 사용하는 프로덕션 데이터베이스에서는 기본 인스턴스와 대기 인스턴스가 모두 변경되므로 적정 규모 설정으로 절감액이 두 배가 됩니다. 또한 RDS MySQL/PostgreSQL에서 Aurora로 전환하는 것도 고려하십시오. Aurora는 비슷한 비용으로 더 나은 성능을 제공하는 경우가 많으며 규모가 커질수록 비용 효율성이 높습니다.
# Monitor RDS utilisation for right-sizing
aws cloudwatch get-metric-statistics \
--namespace AWS/RDS \
--metric-name CPUUtilization \
--dimensions Name=DBInstanceIdentifier,Value=mydb \
--start-time 2026-05-21T00:00:00Z \
--end-time 2026-06-21T00:00:00Z \
--period 86400 \
--statistics Maximum Average
# If 30-day P99 CPU < 30%, consider downsizing
# If P99 CPU > 80%, consider upsizing적정 규모 설정의 운영화
적정 규모 설정은 한 번 실행하고 끝나는 작업이 아니라 지속적인 프로세스여야 합니다. 월별 또는 분기별 검토 주기를 수립하십시오. Compute Optimizer 추천을 가져오고, 안전하게 적용할 수 있는 항목을 평가한 뒤, 유지 관리 기간에 변경 사항을 구현하고 절감액을 측정합니다. 연결되지 않은 EBS 볼륨 정리, 사용하지 않는 Elastic IP 해제, 유휴 로드 밸런서 제거와 같은 간단한 개선 작업은 자동화할 수 있습니다. CloudWatch에 Cost Optimisation Dashboard를 만들고 서비스별 월간 지출을 추적하면서 비정상적인 증가를 표시하십시오.
# Script to release unassociated Elastic IPs
aws ec2 describe-addresses \
--query 'Addresses[?!AssociationId].AllocationId' \
--output text | xargs -I {} \
aws ec2 release-address --allocation-id {}
# Script to delete unattached EBS volumes (careful!)
# First check if snapshots exist before deleting
aws ec2 describe-volumes \
--filters Name=status,Values=available \
--query 'Volumes[].VolumeId' \
--output text적정 규모 설정과 아키텍처 변경 비교
적정 규모 설정은 기존 아키텍처 내의 과다 프로비저닝을 해결하지만, 때로는 아키텍처 자체가 문제일 수 있습니다. 여러 애플리케이션을 실행하는 단일 대형 EC2 인스턴스는 단순히 더 작은 인스턴스로 바꾸기보다 아키텍처를 분해하여 Fargate의 마이크로서비스로 전환해야 할 수 있습니다. 모놀리식 데이터베이스는 인스턴스 규모를 줄이는 것보다 샤딩이나 Caching이 필요할 수 있습니다. 적정 규모 설정은 가장 먼저 실행할 수 있는 빠른 단계입니다. 아키텍처 최적화(서버리스, 컨테이너, Caching)는 더 많은 노력이 필요하지만 더 깊고 지속적인 절감 효과를 제공합니다. Cost Optimisation 기둥에서는 두 가지 방법을 모두 추진할 것을 권장합니다.
# Cost optimisation hierarchy:
# Level 1: Right-sizing (quick wins, days)
# - Compute Optimizer recommendations
# - Delete unused resources
# - Elastic IP, EBS cleanup
# Level 2: Purchasing model (weeks)
# - Reserved Instances / Savings Plans
# - Spot for eligible workloads
# Level 3: Architecture (months)
# - Serverless migration
# - Container consolidation
# - Caching layer addition
# - Database optimisation빠른 확인
이 단원에서 배운 AWS Solutions Architect (SAA-C03) 개념을 이해했는지 확인해 보십시오.
단원 요약
이 단원에서는 다음을 배웠습니다. AWS Compute Optimizer는 CloudWatch 지표에 머신 러닝을 적용하여 적정 규모의 컴퓨팅 리소스를 추천합니다. 적정 규모 설정은 EC2, Lambda, EBS, ASG, ECS on Fargate에 적용할 수 있습니다. 또한 최신 인스턴스 세대, 특히 Graviton으로 업그레이드하면 비용과 성능이 모두 개선됩니다. 적정 규모 설정을 일회성 작업이 아니라 반복적인 실천으로 정착시키십시오. 다음 단원에서는 Reserved Instances, Savings Plans, Spot 구매 모델을 살펴봅니다.
자주 묻는 질문
“적정 규모 조정 및 Compute Optimizer” 강의는 무료인가요?
네 — “적정 규모 조정 및 Compute Optimizer” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AWS Solutions Architect 강의 전체를 잠금 해제할 수 있습니다. AWS Solutions Architect 강의에는 총 4개의 강의가 포함되어 있습니다.
“적정 규모 조정 및 Compute Optimizer”에서 뭘 배우나요?
AWS Compute Optimizer 권장 사항을 사용해 과도하게 프로비저닝된 EC2 인스턴스, Lambda 함수 및 EBS 볼륨의 규모를 줄여 비용을 낮춥니다. 브라우저에서 직접 실행하는 실습 코드로 AWS Solutions Architect을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AWS Solutions Architect을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AWS Solutions Architect은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“적정 규모 조정 및 Compute Optimizer” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AWS Solutions Architect 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AWS Solutions Architect 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 적정 규모 조정 및 Compute Optimizer
- 예약 인스턴스, Savings Plans 및 스팟
- Cost Explorer, 예산 및 비용 할당 태그
- S3 및 데이터 전송 비용 최적화