Tuần 1 - Ngày 4: Billing và Cost Management
Mục tiêu học tập
- Hiểu mô hình tính phí (Pay-as-you-go) của AWS
- Biết sử dụng các tools: Cost Explorer, AWS Budgets, Billing Dashboard
- Phân biệt Reserved Instance, Savings Plans, Spot Instance
- Nắm cách áp dụng AWS Free Tier
1. Mô hình tính phí AWS
Pay-as-you-go
- Trả theo lượng sử dụng: tính giây/giờ, GB/tháng, request/tháng
- Không có upfront cost trừ khi mua RI/SP
- Volume discount: dùng càng nhiều, đơn giá càng giảm (S3, data transfer)
3 trụ cột chi phí
- Compute (EC2 instance-hours, Lambda invocations)
- Storage (S3 GB-month, EBS GB-month)
- Data Transfer (OUT từ AWS sang internet, cross-Region, cross-AZ)
Data Transfer Rules quan trọng
| Loại traffic | Chi phí |
|---|---|
| Inbound từ internet → AWS | Free |
| Outbound từ AWS → internet | Tính phí (~$0.09/GB từ us-east-1) |
| Within same AZ (private IP) | Free |
| Cross-AZ same Region (private IP) | $0.01-0.02/GB (cả 2 chiều) |
| Cross-Region | $0.02/GB và lên |
| EC2 → S3 same Region | Free |
| CloudFront → users | Cheaper than direct EC2 outbound |
2. AWS Free Tier
3 loại Free Tier
| Loại | Thời gian | Ví dụ |
|---|---|---|
| 12-month free | 12 tháng từ ngày tạo account | 750 hrs/month EC2 t2.micro, 5 GB S3, 750 hrs RDS db.t2.micro |
| Always free | Vĩnh viễn | 1M Lambda invocations/month, 25 GB DynamoDB, 1M SNS publishes |
| Trials | Short-term | Inspector trial 90 ngày, Lightsail 1 tháng |
Best practice
- Setup Billing Alarm khi vượt $1 (để phát hiện sớm)
- Đọc kỹ free tier limits của từng service trước khi dùng
3. AWS Billing Dashboard
Các thành phần
- Bills: Hoá đơn tháng hiện tại + lịch sử
- Payment methods: Credit card, ACH
- Cost & Usage Report (CUR): Detailed CSV/Parquet xuất ra S3
- Free Tier usage: Tracking phần đã dùng
Truy cập từ Member account
Trong AWS Organizations, management account xem được billing của tất cả member accounts. Member account cần được enable "IAM user/role access to Billing" để các IAM user trong account đó xem được billing dashboard.
4. AWS Cost Explorer
Định nghĩa
Cost Explorer là tool visualize và phân tích chi phí AWS qua thời gian.
Tính năng
- Visualize cost up to 12 tháng quá khứ và 12 tháng dự báo (forecast)
- Group by: Service, Region, Account, Tag, Usage Type, Instance Type
- Filter: Date range, Service, Linked Account
- Granularity: Hourly (data retained 14 ngày), Daily (38 tháng), Monthly (38 tháng)
- Phát hiện top cost drivers
- Export CSV/PDF
Cost Explorer recommendations
- Reserved Instance Recommendations
- Savings Plans Recommendations
- Right-sizing Recommendations (đề xuất downgrade EC2 underutilized)
5. AWS Budgets
Định nghĩa
AWS Budgets cho phép set ngưỡng chi phí/usage và alert khi vượt.
4 loại Budget
| Loại | Track gì | Use case |
|---|---|---|
| Cost budget | Chi phí $$ | "Tháng này không quá $500" |
| Usage budget | Lượng dùng (GB, hours...) | "EC2 hours < 1000/month" |
| Reserved Instance budget | RI utilization/coverage | "RI usage > 80%" |
| Savings Plans budget | SP utilization/coverage | "SP coverage > 90%" |
Actions
- Send SNS notification
- Send email (tối đa 10 recipients)
- Auto-action (Budgets Actions): apply IAM policy, stop EC2/RDS, target SCP
Cost
- 2 budgets đầu free
- $0.02/budget/day cho budgets thứ 3 trở đi
6. AWS Cost Anomaly Detection
Tính năng
- Machine learning phát hiện chi phí bất thường so với pattern trước đó
- Tạo monitor theo service/account/tag/cost category
- Alert qua email hoặc SNS khi anomaly detected
- Miễn phí
Use case
- Phát hiện hacker mining crypto trên EC2
- Phát hiện S3 bucket bị tấn công data transfer
- Phát hiện code bug gây Lambda invocation tăng đột biến
7. Pricing Models (Tổng quan — chi tiết ở Tuần 10)
EC2 Pricing Options
| Option | Discount | Commitment | Use case |
|---|---|---|---|
| On-Demand | 0% | Không | Test, short-term, unpredictable |
| Reserved Instance (1y/3y) | Lên đến 72% | 1 hoặc 3 năm | Steady-state workload |
| Savings Plans (1y/3y) | Lên đến 72% | $/hour commitment | Flexible commitment |
| Spot Instances | Lên đến 90% | Không | Fault-tolerant, batch |
| Dedicated Host | — | On-demand or RI | License BYOL (Windows, Oracle) |
| Dedicated Instance | — | On-demand or RI | Tenancy isolation |
Storage Pricing
- S3: Tính $/GB-month, $/1000 requests, $/GB transfer-out
- EBS: Tính $/GB-month (provisioned, không phải used). Snapshot tính riêng
- EFS: Tính $/GB-month (chỉ tính phần đã dùng, không provisioned trước)
8. AWS Pricing Calculator
Tính năng
- Estimate chi phí TRƯỚC khi deploy
- Support hầu hết AWS services
- Export ra PDF/CSV để present cho stakeholder
- Lưu/share estimate qua URL
Sample workflow
- Vào https://calculator.aws/
- Add service: EC2 → Configure (instance type, OS, hours)
- Add service: S3 → Configure (storage class, GB, requests)
- Generate estimate → Export PDF
9. AWS Cost Allocation Tags
Định nghĩa
Tags là key-value pairs gắn vào AWS resources để phân loại và tracking chi phí.
2 loại tags trong billing
- AWS-generated tags:
aws:createdBy,aws:cloudformation:stack-name - User-defined tags:
Project=ProjectX,Environment=Production,CostCenter=CC123
Activation flow
- Tag resources (manually hoặc via IaC)
- Vào Billing Console → Cost Allocation Tags
- Activate tag cần dùng cho billing
- Sau 24 giờ, tag xuất hiện trong Cost Explorer
Best practice
- Mandatory tags:
Project,Environment,Owner,CostCenter - Enforce via AWS Organizations Tag Policies hoặc SCP
10. Billing Alarm (CloudWatch)
Setup
- Bật billing metrics trong account preferences (chỉ ở us-east-1)
- Tạo CloudWatch Alarm trên metric
AWS/Billing → EstimatedCharges - Set threshold (ví dụ: $50)
- Action: gửi notification qua SNS
Khác AWS Budgets ở điểm gì?
- CloudWatch Billing Alarm: chỉ cost, chỉ ở us-east-1
- AWS Budgets: cost + usage + RI/SP, global, nhiều actions hơn
Câu hỏi ôn tập
-
Data transfer OUT từ EC2 đến internet có tính phí không? Inbound thì sao?
Xem đáp án
OUT từ EC2 → internet: có tính phí (~$0.09/GB từ us-east-1, giảm theo volume). Inbound từ internet → AWS: miễn phí. Đây là một trong những câu hỏi hay xuất hiện trong kỳ thi — "inbound free, outbound tính phí" là nguyên tắc chính. Data transfer trong cùng AZ (private IP) cũng miễn phí; cross-AZ tính $0.01-0.02/GB mỗi chiều.
-
EC2 truy cập S3 cùng Region qua public endpoint có tính data transfer không?
Xem đáp án
Không — EC2 truy cập S3 cùng Region qua public endpoint là miễn phí. AWS miễn phí data transfer giữa EC2 và S3 trong cùng Region. Tuy nhiên nếu dùng VPC endpoint cho S3 (gateway endpoint) cũng miễn phí và an toàn hơn (không qua internet). Cross-Region S3 transfer mới tính phí.
-
Khác biệt giữa AWS Budgets và CloudWatch Billing Alarm?
Xem đáp án
CloudWatch Billing Alarm: chỉ track cost, chỉ khả dụng ở us-east-1, alert đơn giản qua SNS. AWS Budgets: track cost + usage + Reserved Instance utilization/coverage + Savings Plans; có thể apply Budget Actions (tự động stop EC2, apply SCP...); hỗ trợ nhiều notification types hơn; global. AWS Budgets mạnh hơn nhiều — khuyến nghị dùng cho production.
-
Cost Allocation Tags cần bao lâu để xuất hiện trong Cost Explorer sau khi activate?
Xem đáp án
24 giờ sau khi activate tag trong Billing Console. Quan trọng: chỉ cost data sau khi activate mới được tag — dữ liệu lịch sử trước đó không được retroactively tag. Workflow: tag resources → activate trong Billing Console → đợi 24h → filter theo tag trong Cost Explorer.
-
Để tracking chi phí theo Project, bạn cần làm gì?
Xem đáp án
(1) Tag tất cả resources với key-value phù hợp, ví dụ
Project=ProjectAlpha. (2) Vào Billing Console → Cost Allocation Tags → activate tagProject. (3) Sau 24 giờ, Cost Explorer hiển thị breakdown theo tagProject. Tốt nhất nên enforce tagging bằng AWS Organizations Tag Policies hoặc SCP để đảm bảo không có resource nào thiếu tag.
Bài tập thực hành
- Setup Billing Alarm tại $5 (an toàn cho việc học)
- Tạo AWS Budget cost $10/tháng với email notification
- Mở Cost Explorer xem chi phí 30 ngày qua, group by Service
- Vào Pricing Calculator estimate 1 EC2 t3.medium chạy 730 hrs + 100 GB EBS + 50 GB data transfer out
- Tag resources với
Environment=devvà activate cost allocation tag
Tài liệu tham khảo chính thức
- AWS Pricing
- AWS Free Tier
- Cost Explorer User Guide
- AWS Budgets
- Cost Anomaly Detection
- Pricing Calculator
Tiếp theo: AWS CLI và SDK