11CHAPTER 11 · 실전·심화

비용 관리

비용을 뒤늦게 확인하는 것이 아니라 예산·이상징후·태그·최적화로 통제하기

실전·심화가격은 시점·Region별 확인FinOps 기본

Billing · AWS Budgets · Cost Explorer · Cost Anomaly Detection · Cost Allocation Tags · Compute Optimizer · Trusted Advisor · Savings Plans

CHAPTER INFO
💰비용 누수 조기 발견
🚨Budget + Anomaly Alert
🏷Tag로 책임·환경 분리
🔗이전: CH10 종합 실습
🎉커리큘럼 마지막 챕터

비용 관리는 세 단계다 — 알기, 막기, 줄이기

AWS 비용 문제는 “비싸다”보다 “어디서 왜 발생했는지 모른다”에서 시작합니다. 먼저 비용을 서비스·Region·환경·프로젝트별로 보이게 만들고, 예산과 이상징후 알림으로 예상 밖 증가를 빨리 발견한 뒤, Rightsizing과 Commitment로 구조적으로 줄입니다.

👀
Visibility
→
🚨
Guardrail
→
✂️
Optimize
→
🔁
Repeat
예산 초과를 막는 일
Budgets와 Cost Anomaly Detection으로 예상하지 못한 증가를 빨리 발견합니다.
정상 비용을 줄이는 일
Idle Resource 제거, Rightsizing, Architecture 개선, Savings Plans 같은 장기 최적화를 수행합니다.

비용이 새는 대표 지점 — “멈췄다”와 “과금이 멈췄다”는 다르다

리소스자주 생기는 오해확인 포인트
Public IPv4Elastic IP가 연결돼 있으면 무료라고 생각현재 AWS는 사용 중인 주소를 포함해 Public IPv4 Address에 요금을 부과하므로 필요 수를 줄임
EBSEC2를 Stop/Terminate하면 Volume도 항상 사라진다고 생각Available Volume과 Snapshot 잔존 확인
RDSStop하면 모든 비용이 0이라고 생각Storage·Backup 비용과 일반 RDS 자동 재시작 조건 확인
NAT Gateway트래픽이 없으면 비용이 거의 없다고 생각가동 시간과 처리 데이터, 대체 가능한 VPC Endpoint 검토
Load BalancerTarget이 없어도 비용이 없다고 생각사용하지 않는 ALB/NLB와 Target Group 정리
Snapshots원본 리소스 삭제 시 자동 제거된다고 생각EBS/RDS Snapshot 보존 목적과 Lifecycle 확인
Route 53DNS Query가 없으면 Hosted Zone 비용도 없다고 생각사용하지 않는 Hosted Zone·Health Check 확인
CloudWatch로그를 모으기만 하면 비용 영향이 작다고 생각Log Ingestion·Retention·Insights Query·Custom Metric 범위 확인
🌍
Region 하나만 보면 안 됩니다.
다른 Region에 실수로 생성한 EC2·RDS·NAT Gateway·Snapshot이 남을 수 있습니다. Billing과 Cost Explorer에서 Region별 비용을 먼저 보고, 필요하면 AWS Resource Explorer 같은 도구로 실제 리소스를 찾습니다.

AWS Budgets — “얼마가 정상인지”를 숫자로 선언한다

예산은 다른 사람의 금액을 복사하는 것이 아니라 내 계정에서 허용할 월간 비용을 정하는 장치입니다. 전체 계정뿐 아니라 서비스·계정·태그 등 필요한 범위로 나눠 실제 비용과 예측 비용에 알림을 둘 수 있습니다.

알림의미사용 시점
Actual실제 누적 비용이 Threshold 도달이미 발생한 비용 통제
Forecasted현재 사용 추세로 예산 초과가 예상됨월말 전에 선제 대응
💡
Forecast Alert는 사용 이력이 충분해야 의미가 있습니다.
AWS Budgets의 예측은 과거 사용 데이터를 기반으로 하므로 새 계정이나 사용 이력이 짧은 환경에서는 Forecast Alert가 바로 동작하지 않을 수 있습니다. Actual Alert와 함께 사용합니다.

예산 설계 예시

범위기준예시 의도
전체 계정월간 Cost총 비용 상한 감시
학습 환경Environment Tag실습 리소스 누수 감시
비용 민감 서비스Service FilterNAT·RDS·Compute 증가 조기 탐지

Cost Anomaly Detection — “예산 안쪽의 이상한 증가”도 잡는다

Budget은 정해둔 선을 넘는지 확인하는 데 좋지만, 예산을 초과하지 않아도 평소보다 갑자기 비용이 튈 수 있습니다. AWS Cost Anomaly Detection은 사용 패턴을 분석해 비정상적인 Spend를 탐지하고 Alert Subscription으로 알릴 수 있습니다.

Budget
정해둔 비용 또는 사용량 Threshold와 비교합니다. “얼마까지 허용할 것인가?”에 답합니다.
Anomaly Detection
평소 사용 패턴과 다른 증가를 탐지합니다. “평소와 다른 일이 생겼는가?”에 답합니다.
🚨
둘 중 하나가 아니라 함께 사용합니다.
Budget으로 절대 한도를 감시하고 Anomaly Detection으로 예상 밖 패턴을 감시하면 비용 사고의 발견 시간을 줄일 수 있습니다.

Cost Explorer — 비용 증가의 원인을 분해한다

비용이 늘었다면 총액만 보지 말고 Service, Region, Usage Type, Account, Tag 같은 Dimension으로 잘라 봅니다. 비용 최적화의 첫 질문은 “무엇을 줄일까?”가 아니라 “증가분이 어디서 생겼나?”입니다.

Service 기준
어떤 AWS 서비스가 증가를 만들었는지 확인합니다.
Region 기준
의도하지 않은 Region 사용이 있는지 확인합니다.
Usage Type 기준
Compute, Data Transfer, Public IPv4 등 실제 비용 항목을 좁힙니다.
Tag 기준
Project·Environment·Owner 기준으로 책임과 목적을 분리합니다.

Cost Allocation Tag — “누가 왜 쓰는 비용인지” 보이게 한다

리소스에 Tag를 붙이는 것만으로 Billing 분석이 바로 되는 것은 아닙니다. 사용자 정의 Tag Key를 Billing and Cost Management의 Cost Allocation Tags에서 활성화해야 비용 분석 Dimension으로 활용할 수 있습니다.

Tag Key예시 값목적
Projectrewards프로젝트별 비용
Environmentdev / staging / prod환경별 비용
Ownerteam-web관리 주체
CostCenterweb-ops조직 비용 배분
⏱
Tag는 적용과 활성화에 반영 시간이 걸릴 수 있습니다.
AWS 문서상 사용자 정의 Cost Allocation Tag는 리소스에 적용한 뒤 Billing 화면에 나타나기까지, 그리고 활성 상태가 되기까지 각각 시간이 걸릴 수 있습니다. 비용 분류는 배포 전에 Tag 표준부터 정하는 편이 좋습니다.

Rightsizing — 큰 인스턴스를 작은 인스턴스로 바꾸는 것 이상의 작업

Rightsizing은 실제 사용량을 보고 과도한 Compute·Memory·Storage를 줄이는 과정입니다. AWS Compute Optimizer는 여러 리소스의 구성과 사용량 Metrics를 분석해 Rightsizing Recommendation과 Idle Resource 기회를 제공합니다.

순서확인주의
1최근 사용량과 Peak평균만 보고 줄이지 않음
2CPU·Memory·Network·Storage한 지표만으로 판단하지 않음
3추천 Instance/Resource성능·가용성 요구 확인
4Staging 또는 점진 적용변경 후 성능 재측정
📉
Commitment 구매 전에 Rightsizing부터 합니다.
과도하게 큰 Compute를 그대로 둔 채 Savings Plans 같은 장기 Commitment를 먼저 구매하면 불필요한 사용량까지 약정할 수 있습니다. 정상 크기를 먼저 찾고 안정된 사용 패턴에서 Commitment를 검토합니다.

Savings Plans — “싸게 쓰기”와 “약정하기”를 구분한다

Savings Plans는 일정한 Compute 사용이 지속되는 환경에서 On-Demand 대비 비용을 낮출 수 있지만, Commitment입니다. 학습 환경처럼 사용량이 자주 꺼지거나 변하는 시스템에는 무조건 맞는 선택이 아닙니다.

먼저 확인질문
Rightsizing 완료현재 Resource 크기가 과하지 않은가?
사용 패턴24시간·장기간 안정적으로 사용하는가?
기존 Commitment이미 적용된 Savings Plans/RI가 있는가?
추천 분석AWS의 과거 사용량 기반 Recommendation을 검토했는가?

Trusted Advisor — Support Plan에 따라 보이는 Check가 다르다

Trusted Advisor는 Cost Optimization, Performance, Security, Fault Tolerance, Service Limits, Operational Excellence 등의 Recommendation을 제공합니다. 단, 사용 가능한 Check와 API 기능은 AWS Support Plan에 따라 다릅니다.

ℹ️
“무료 계정은 보안 7개”처럼 고정 숫자로 외우지 않습니다.
현재 Basic Support에서는 Service Limits 전체와 Security/Fault Tolerance의 일부 Core Check를 사용할 수 있으며, Business Support+·Enterprise Support·Unified Operations 등에서는 더 넓은 Trusted Advisor 기능을 제공합니다. 지원 플랜과 Check 목록은 AWS 문서에서 현재 상태를 확인합니다.

운영 루틴 — 매일 자동 감시 + 월간 구조 개선

주기할 일목적
상시Budget / Anomaly Alert 수신비용 사고 조기 발견
주간Cost Explorer 증가 서비스 확인비정상 추세 조기 확인
월간Idle Resource·Public IPv4·Snapshot·NAT·RDS 점검잔존 비용 제거
월간Tag 미분류 비용 확인비용 책임 100% 분류에 접근
분기Compute Optimizer·Architecture ReviewRightsizing과 구조 개선
안정화 후Savings Plans Recommendation 검토장기 사용량 Commitment 판단
🎉 AWS 완전 정복 가이드 핵심 비용 원칙
VisibilityService·Region·Usage Type·Tag로 비용을 분해한다
GuardrailBudget과 Cost Anomaly Detection을 함께 사용한다
OwnershipCost Allocation Tag로 Project·Environment·Owner를 연결한다
OptimizeIdle 제거 → Rightsizing → Architecture → Commitment 순으로 검토한다
Current Price고정 가격을 외우지 말고 실제 Region·시점의 AWS 가격표로 확인한다