aws-doc/课程/第五阶段-监控与运维/第34天-成本管理.md
2026-05-08 10:24:39 +08:00

6.5 KiB
Raw Permalink Blame History

第34天成本管理——控制你的 AWS 账单

今天你将学到什么

今天学习如何管理和优化 AWS 成本。AWS 按使用量付费,用得好省钱,用不好可能收到天价账单。掌握成本管理是每个 AWS 用户的必修课。


AWS 定价的基本原则

三大定价原则

  1. 按使用量付费:用多少付多少,不用不花钱
  2. 用得越多越便宜:很多服务有阶梯定价
  3. 预付费更便宜:承诺长期使用可以获得折扣

什么东西要花钱

类别 计费方式 举例
计算 按运行时间 EC2 每小时 $0.05
存储 按存储量 S3 每 GB 每月 $0.023
网络 按传输量 数据传出每 GB $0.09
请求 按请求次数 API Gateway 每百万次 $3.50
数据库 按实例时间 + 存储 RDS 每小时 $0.10 + 存储费

什么东西免费

  • 数据传入 AWS免费上传不花钱
  • 同一可用区内的数据传输:免费
  • 很多服务的 Free Tier12 个月免费额度)

常见的"账单惊吓"

惊吓一:忘记关 EC2

你创建了一台 EC2 做实验,用完忘记关了。一个月后发现账单多了 $50。

预防:设置 Billing Alarm超过预算立刻通知。

惊吓二NAT Gateway 流量费

NAT Gateway 按流量收费($0.045/GB。如果你的应用通过 NAT Gateway 下载大量数据,费用会很高。

预防:使用 VPC Endpoint 访问 S3/DynamoDB免费减少通过 NAT 的流量。

惊吓三EBS 快照堆积

每次创建 EBS 快照都会占用存储空间。如果不清理旧快照,费用会持续增长。

预防:设置快照生命周期策略,自动删除过期快照。

惊吓四:闲置的 Elastic IP

Elastic IP 绑定到运行中的 EC2 是免费的。但如果 EC2 停止了或 IP 没有绑定,每小时收 $0.005。

预防:不用的 Elastic IP 及时释放。


AWS 省钱策略

策略一:选择合适的实例类型

不要盲目选大实例。先用小实例,监控资源使用率,再决定是否升级。

场景 推荐 原因
开发测试 t3.micro / t3.small 便宜,突发性能够用
稳定负载 m6i / c6i 性价比高
内存密集 r6i 内存大
计算密集 c6i CPU 强

策略二:使用预留实例 / Savings Plans

如果你确定要长期使用某些资源,预付费可以省很多钱。

方式 折扣 灵活性 适合
按需On-Demand 无折扣 最灵活 短期、不确定的负载
Savings Plans 最多 72% 中等 确定要用 1-3 年
预留实例 最多 75% 最低 确定实例类型和区域
Spot 实例 最多 90% 可能被中断 可中断的任务

策略三:使用 Spot 实例

Spot 实例是 AWS 闲置的计算资源,价格只有按需的 10-30%。但 AWS 可能随时收回。

适合

  • 批处理任务(数据分析、视频转码)
  • CI/CD 构建
  • 测试环境
  • 可以容忍中断的工作负载

不适合

  • 生产环境的核心服务
  • 数据库
  • 不能中断的任务

策略四:合理使用存储层级

S3 存储类 价格 适合
Standard $0.023/GB 频繁访问的数据
Infrequent Access $0.0125/GB 偶尔访问(每月一次)
Glacier $0.004/GB 归档(几个月访问一次)
Glacier Deep Archive $0.00099/GB 长期归档(几年访问一次)

设置生命周期策略自动转移:

0-30 天Standard
30-90 天Infrequent Access
90 天以上Glacier

策略五:关闭不用的资源

听起来简单,但很多公司每月浪费 20-30% 的云费用在闲置资源上。

常见浪费

  • 开发环境晚上和周末不关
  • 测试完的资源忘记删除
  • 没有流量的负载均衡器
  • 没有挂载的 EBS 卷

AWS 成本管理工具

Cost Explorer——费用分析

可视化你的 AWS 花费:

  • 按服务查看:哪个服务花钱最多
  • 按时间查看:费用趋势是上升还是下降
  • 按标签查看:哪个项目/团队花钱最多
  • 预测未来费用

Budgets——预算告警

设置预算上限,超过时自动通知:

月度预算:$100
告警阈值:
  - 达到 50%$50→ 发邮件提醒
  - 达到 80%$80→ 发邮件 + 短信
  - 达到 100%$100→ 紧急通知 + 可选自动操作

强烈建议:学习阶段一定要设置 Budget设置 $10 或 $20 的月度预算,避免意外花费。

Trusted Advisor——优化建议

AWS 的"理财顾问",自动检查你的账户并给出建议:

检查类别 举例
成本优化 "你有 3 台 EC2 CPU 使用率低于 10%,建议缩小实例"
性能 "你的 EBS 卷 IOPS 经常达到上限,建议升级"
安全 "你的 S3 桶是公开的,建议限制访问"
容错 "你的 RDS 没有开启 Multi-AZ建议开启"

资源标签Tags——费用归属

给每个资源打标签,方便追踪费用归属:

标签示例:
  Environment: production / staging / development
  Team: backend / frontend / data
  Project: order-system / user-portal

然后在 Cost Explorer 中按标签筛选,就能知道每个团队、每个项目花了多少钱。


成本优化清单

优先级 措施 预期节省
关闭闲置资源 10-30%
合适的实例大小 10-20%
Savings Plans / 预留实例 30-72%
使用 Spot 实例 60-90%(适用部分)
S3 生命周期策略 存储费 50-90%
VPC Endpoint 替代 NAT 网络费 50%+
选择合适的区域 5-15%
数据传输优化 视情况

今天的小测验

  1. AWS 的三大定价原则是什么?
  2. Spot 实例为什么这么便宜?什么场景适合用?
  3. 为什么学习阶段一定要设置 Budget
  4. 列举三种常见的 AWS 费用浪费场景。

延伸阅读


明天预告

明天学习 Well-Architected Framework——AWS 的架构设计最佳实践框架。了解如何从五个维度评估和改进你的架构。