AWS 想省成本,Savings Plans 不是买得越多越好
很多人看到 AWS 账单高了,第一反应就是:要不要买 Savings Plans?确实,长期稳定跑的 EC2、Fargate、Lambda,如果一直按 On-Demand 价格用,通常是有优化空间的。但我觉得 Savings Plans 最容易踩的坑,不是“没买”,而是买得太早、买得太满。项目刚跑起来的时候,用量其实很容易变。今天是 10 台 EC2,下个月可能扩到 15 台,也可能因为业务调整缩到 6 台;有些项目甚至会从 EC2 换到容器,或者迁一部分到别的服务。这个时候如果为了追求折扣,一口气把承诺金额买得很高,后面反而会被绑定住。比较稳妥的做法,通常是先看一段时间真实用量。我一般会先看几个东西:[*]最近 2~3 个月 On-Demand 使用是否稳定
[*]有没有明显的业务高峰和低谷
[*]哪部分资源是长期 7×24 小时运行
[*]哪部分只是临时测试、弹性扩容
[*]现有 Savings Plans 的覆盖率和利用率怎么样
先把“长期不会消失的那部分用量”找出来,再决定承诺多少,会更稳。举个很简单的例子。如果一个账号平时计算类消费大概 3000 美元,但真正长期稳定的底盘只有 1800~2000 美元,那我更愿意先覆盖这部分,而不是为了折扣直接把 3000 全部锁进去。剩下的弹性用量继续按需跑,虽然单价高一点,但灵活性也保留下来了。AWS 成本优化里,有时候最怕的就是只看“折扣有多大”,不看“这个折扣能不能真的吃满”。我们平时在帮一些 AWS 账号看账单时,也会遇到这种情况:账面上已经买了不少 Savings Plans,但 Coverage 看起来不错,Utilization 却并不理想,最后实际节省效果没有想象中那么高。所以我现在更倾向于把顺序反过来:先看账单结构,再看稳定用量,最后才决定要不要买、买多少。而不是一看到 AWS 用量上来了,就先把 Savings Plans 当成第一步。如果账号每个月已经有几千美元甚至更高的稳定消费,这一步其实很值得认真算一下。因为承诺型折扣一旦买下去,后面影响的就不是一天两天,而是整个周期。做 AWS 出海项目的朋友如果最近也在研究 Savings Plans,可以先把最近几个月的实际用量拉出来看一遍。很多时候,不是“有没有折扣”的问题,而是“折扣买得合不合理”。
页:
[1]