月初打开账单,发现数字比上个月多了个零。明明没干什么,流量也没暴涨,钱去哪了?别慌,大部分账单超标都不是系统出错,而是下面这 5 个配置在偷偷“烧钱”。AWS 计费是出了名的细致,细致到如果你不主动关掉某些东西,它会默认你需要,然后一直计费。

1. 资源“停”了但没“删”

这是最经典的坑。很多人以为把 EC2 关机(Stop)就完事了。停止只是让虚拟机不跑,但 attached 的 EBS 存储盘(相当于硬盘)还在,而且持续计费。更隐蔽的是,如果你用的是 Auto Scaling 组或者 Elastic Beanstalk 环境,它们会监控实例健康状态。你手动把实例停了,系统会判定“实例挂了”,然后自动帮你重新开一台新的。

解决方案:进 EC2 控制台,把 Instances 状态筛选为 stoppedterminated,该释放的释放。如果资源是 Elastic Beanstalk 创建的,一定要去 EB 环境里点“Terminate”,不要单独去 EC2 页面删机器。

2. 数据库版本“超期服役”带来的额外支持费

如果你用 RDS(托管数据库),而且最近账单突然在某个固定时间点暴涨,90% 是数据库引擎版本到期了。比如 PostgreSQL 12 在 2025 年 2 月底停止标准支持,如果你没手动关闭“扩展支持”,AWS 会自动帮你开启这个付费选项,价格贵到离谱。

解决方案:登录 RDS 控制台,看数据库的“维护”或“版本”信息。如果提示处于“延长支持”状态,尽快升级到更新的主要版本。别跟版本过不去,这是 AWS 为数不多会“强制收费”的点。

3. 负载均衡器(ELB)成了“空转”摆设

你建了个应用负载均衡器(ALB)给后端服务挡流量,后来后端机器删了,但 ALB 忘删了。负载均衡器只要存在,无论有没有流量,都在按小时计费。更坑的是,如果它还在,它可能会因为找不到后端而不断重试,产生不必要的跨可用区流量费。

解决方案:打开 EC2 下的 Load Balancers 页面,看有没有“闲置”且没注册实例的。果断 Delete。

4. 快照(Snapshot)是个“吞金兽”

EBS 快照是按存储量收费的。很多运维习惯在做大更新前打个快照以防万一,但从来不删旧快照。一个月打 30 个快照,每个存 100GB,这费用比跑一台服务器还贵。而且,如果你在某个 Region(区域)禁用了服务但没删干净资源,那个 Region 的快照依然在收费。

解决方案:去 Snapshot 页面,按创建时间排序。保留最近 1-2 个备份,其余勾选删除。

5. 默认开启的“隐藏服务”与预估账单的虚惊

有些服务自带关联资源。比如用了 OpsWorks 或 Elastic Beanstalk,它们启动的底层 EC2 是有“自愈”功能的,你直接删机器它会重启。另外,6 月份 AWS 出过一次大范围的计费系统 Bug,显示用户欠了几千亿美金。虽然是虚惊一场,但如果你打开 Cost Explorer(成本分析工具)发现数值异常离谱,先去 re:Post 或官方状态页看一眼,是不是系统“抽风”了,别急着卖房。

结论
解决超标问题其实就三步:

  1. 看账单:去 Cost Explorer 按服务(Service)分组,看哪个服务的费用排第一。

  2. 查残留EBS 卷、EBS 快照、闲置的 Load Balancer、未被终止的 RDS 实例,这 4 个是“孤儿资源”重灾区。

  3. 做减法先确定源头,再去对应服务里点 Terminate(而不是 Stop)。版本过期的数据库记得升级。最后,打开 AWS Budgets(预算警报),设个 10 块钱的阈值,下一次超标前让它给你发个邮件提醒。