5.4 KiB
5.4 KiB
第9天:EC2 省钱策略——同一台机器四种价格
今天你将学到什么
今天揭秘 AWS 的定价策略。同样配置的服务器,选对付费方式能省 60-90% 的钱。这不是理论——大公司每年靠这个省下数百万美元。
先理解一个核心概念
AWS 的服务器硬件是一样的,但付费方式不同,价格天差地别。
生活类比:同一间酒店房间——
- 当天到前台订:全价 800 元/晚(按需)
- 提前一年签约包房:400 元/晚(预留)
- 凌晨 2 点在 APP 上抢尾房:80 元/晚(Spot)
AWS 的逻辑完全一样。
四种购买方式
1. 按需实例(On-Demand)— 最贵但最灵活
规则:随时开,随时关,按秒计费,无任何承诺。
价格参考(us-east-1,Linux):
- t3.micro:约 ¥0.07/小时
- m5.large:约 ¥0.67/小时
- c5.xlarge:约 ¥1.18/小时
适合场景:
- 刚开始学习和实验
- 短期项目(跑几天就不用了)
- 流量不可预测的新应用
- 不确定需要多大配置,先试试
生活类比:出差临时订酒店,贵但灵活。
2. 预留实例 / Savings Plans — 承诺换折扣
规则:承诺使用 1 年或 3 年,换取大幅折扣。
折扣幅度:
| 承诺方式 | 折扣 |
|---|---|
| 1 年,不预付 | 约 36% |
| 1 年,全预付 | 约 40% |
| 3 年,不预付 | 约 50% |
| 3 年,全预付 | 约 60% |
举个具体例子:
一台 m5.large 在 us-east-1:
- 按需:$0.096/小时 × 24 × 365 = $841/年
- 1 年预留(全预付):$505/年(省 $336)
- 3 年预留(全预付):$320/年(省 $521)
适合场景:
- 7×24 小时运行的生产服务器
- 数据库服务器(一直开着的)
- 你确定未来 1-3 年都需要这台机器
生活类比:和房东签长期租约,月租便宜很多。
Savings Plans(更灵活的替代方案):
- 不锁定具体的实例类型,只承诺每小时花多少钱
- 比如承诺"每小时至少花 $10",换取折扣
- 可以随时换实例类型、换 Region
- 推荐新手用 Savings Plans 而不是传统预留实例
3. Spot 实例 — 最便宜但随时可能被收回
规则:使用 AWS 的闲置服务器,价格极低(按需的 10-30%),但 AWS 需要这些资源时会提前 2 分钟通知你,然后收回。
折扣幅度:通常比按需便宜 60-90%。
举个例子:
- m5.large 按需:$0.096/小时
- m5.large Spot:$0.03/小时(便宜 70%)
适合场景:
- 大数据分析(Hadoop/Spark 集群)
- 机器学习模型训练
- 视频转码、图片处理等批处理任务
- CI/CD 构建(编译代码)
- 任何"中断了可以重来"的任务
绝对不适合:
- 数据库(中断了数据可能丢失)
- 在线服务的唯一实例(中断了用户就访问不了)
- 任何不能容忍中断的关键服务
生活类比:航空公司的"候补票"——便宜得多,但如果满员了你就上不了飞机。
4. 专用主机(Dedicated Hosts)— 最贵
规则:整台物理服务器只给你一个人用,不和别人共享。
适合场景:
- 法规要求物理隔离(某些金融、政府场景)
- 使用按 CPU 核心数授权的商业软件(如 Oracle 数据库)
学习阶段完全不需要关心这个选项。
聪明的组合策略
成熟的公司不会只用一种方式,而是混合使用:
总计算需求
├── 基线负载(70%)→ Savings Plans(稳定便宜)
│ 这部分是你确定一直需要的
├── 可中断任务(20%)→ Spot 实例(超级便宜)
│ 大数据分析、批处理、训练模型
└── 突发需求(10%)→ 按需实例(灵活应急)
临时的流量高峰、紧急项目
真实案例:某电商公司
- 日常服务器用 Savings Plans:省 40%
- 大促前临时加的服务器用按需:灵活
- 后台数据分析用 Spot:省 70%
- 综合下来比全用按需省了 55%
其他省钱技巧
选对实例类型:
- 很多人选了太大的实例,CPU 利用率常年只有 10-20%
- 用 AWS Compute Optimizer 工具,它会分析你的使用情况并推荐合适的类型
选对 Region:
- 不同 Region 价格不同
- us-east-1(弗吉尼亚)通常最便宜
- 南美(圣保罗)比弗吉尼亚贵 40-50%
用 Graviton 实例:
- AWS 自研的 ARM 芯片
- 比同配置的 Intel 实例便宜 20%,性能还更好
- 实例类型带
g的就是 Graviton(如 t4g、m6g、c6g)
开发测试环境下班关机:
- 用 AWS Instance Scheduler 自动定时开关机
- 工作日 9:00 开机,18:00 关机 = 省 65% 的费用
今天的小测验
- 如果你有一台数据库服务器需要 7×24 运行 3 年,应该选哪种购买方式?
- Spot 实例为什么这么便宜?它的风险是什么?
- 一个机器学习训练任务(可以中断后重来)适合用什么实例?
- 为什么说"全用按需"是最贵的方案?
延伸阅读
明天预告
明天学习 Auto Scaling 和负载均衡——让你的应用自动应对流量变化。流量来了自动加机器,流量走了自动减机器,再也不用半夜起来手动扩容了。