site logo

Marico's space

AWS Trusted Advisor vs Compute Optimizer vs Cost Explorer:各工具实际能发现多少可回收资源浪费

服务器技术 2026-08-20 20:56:24 7

最近把阿里云上的几个项目做了次成本审计,顺手把AWS那三板斧——Trusted Advisor、Compute Optimizer和Cost Explorer——拿来仔细对比了一番。市面上的对比文章都在列功能清单,说实话意义不大。真正该问的问题是:在这个季度你能回收的那笔钱里,每个工具能看见多少?

换这个角度看问题,结论完全不一样。这三个工具在各自的领域都做得不错,但问题在于——它们共同忽视的那几个浪费类别,对于大多数账号来说恰恰是最大头的那块。

每个工具到底是干什么吃的

Trusted Advisor本质上是个检查清单引擎。它的成本优化模块跑的是快照式检查:低利用率EC2实例、空闲负载均衡器、未关联的弹性IP、低利用率EBS卷、空闲RDS实例,就这么几样。坑在于:完整的成本检查需要商业版或企业版支持计划;免费层能看到的只是九牛一毛。它回答的是"此时此刻有哪些已知的坏模式",每次一个检查项,而且没有汇总金额能直接交给财务看。

Compute Optimizer是个规格调优推荐器。它用机器学习分析过去14天的利用率历史(默认),如果开启增强基础设施指标(收费的)能看到约三个月),然后给出目标配置建议:这台m5.2xlarge可以缩成m5.large,这个gp2卷可以换成gp3,这个Lambda内存配多了,这个ASG规格过大。它免费、具体,覆盖范围刚好是"计算"这个形状:EC2、ASG、EBS、Lambda和部分容器负载。它永远不会告诉你有个空闲的NAT网关或者未挂载的卷,因为那不是它要回答的问题。

Cost Explorer是支出分析工具,上面绑了两个推荐模块:预留实例和 Savings Plans 购买推荐(这是它真正独一份的工作:基于你的使用曲线做承诺覆盖度计算),以及一个基础的规格调优视图,和Compute Optimizer有重叠但深度不够。它回答的是"钱都花哪儿了,我们应该承诺买什么",而不是"什么东西浪费了"。

说白了三句话:Trusted Advisor找固定清单里的基础问题,Compute Optimizer找计算资源规格过大,Cost Explorer找承诺购买机会。三个不同的问题,都真实存在。

逐类别看覆盖面

把这三个工具放到完整的浪费分类体系里对一下,空缺就清晰了。大多数可回收支出可以分成八个类别:

  1. 闲置资源(跑着但没人用):Trusted Advisor覆盖经典场景(EC2、RDS、负载均衡),但需要支持计划;其他两个基本不管这块。
  2. 规格调优(跑着但配大了):Compute Optimizer的主场;Cost Explorer浅尝辄止;Trusted Advisor沾一点边。
  3. 定时调度(凌晨3点还在跑但没人用):三个工具全都没戏。没有任何一个原生检查会告诉你"这套非生产环境每周跑168小时,实际只用了50小时"。对大多数公司来说,这是单个最大的可控浪费类别。
  4. 孤儿资源(在计费但没有父级):最多算部分覆盖。未关联的EIP和低利用率卷会出现在Trusted Advisor里;孤儿快照、遗留的分段上传、被遗忘的仪表盘、无节点的集群,这些哪儿都不显示。
  5. 承诺覆盖(稳定负载还在按需付费):Cost Explorer,真做得不错。
  6. 存储层级(冷数据放热存储):S3有自己的分析工具;这三个工具里没有一个把它呈现为"可回收的浪费,具体金额是多少"。
  7. 流量费用(流量其实有免费路径却在走NAT):没人管。NAT网关的流量处理费就那么明晃晃地藏在账单里。
  8. Kubernetes workload浪费(requests是实际用量的两倍):三个工具全看不见,因为它发生在实例边界以下。

把这张表过一遍,规律很清楚了:原生工具大概能看到一半的分类,而且集中在较简单的那些。真正大钱的类别——定时调度、大规模孤儿资源、K8s——全都是结构性盲点,因为每个工具都被限定死了只能回答一个问题。

怎么在自己的账号上测量这个

别听任何关于覆盖面的说法(包括这篇文章的),自己查一下半个下午就能搞定:

  1. 把上面的八个类别记下来。
  2. 把三个工具全跑一遍,导出所有发现,按类别和月费金额归档。
  3. 单独手动扫一遍两个工具跳过的类别:按账号分工作日和周末支出(调度机会),跑经典的孤儿资源查询(未挂载卷、过期快照、空闲网关)。
  4. 对比:工具挖出来的金额 vs 挖出来的总金额。这个百分比就是你个人的覆盖面数字,波动范围很大,取决于你的架构。

做过这个审计的团队通常会发现,原生三件套在承诺计算和基础规格调优上很准,但大多数可回收的钱其实躺在没被检查的那些类别里。不管比例怎么分布,到时候你手里会有个能跟人掰扯的答案,面对"云厂商说你已经优化到位了"这种话不会再哑火——而这句话通常是引发这次调查的导火索。

FAQ

Trusted Advisor免费吗?

部分免费。一小套核心检查对所有人开放;完整的成本优化模块(空闲实例、空闲RDS、低利用率卷之类)需要商业版或企业版支持计划。如果你是基础支持,免费层的成本覆盖薄到不该拿来支撑任何关于浪费的结论。

Trusted Advisor和Compute Optimizer的区别是什么?

Trusted Advisor跑的是已知坏模式的固定清单(空闲这个、未关联那个),跨多个服务,快照式检查。Compute Optimizer用机器学习分析利用率历史,给出计算资源具体的目标规格建议。一个是基础卫生检查,一个是规格调优;两者只在边缘地带(低利用率EC2)有重叠。

用Cost Explorer的规格调优还是Compute Optimizer?

分析用Compute Optimizer(可选更长的回溯期、更多资源类型、风险评分、具体目标);承诺侧用Cost Explorer(RI和Savings Plans购买推荐),Compute Optimizer不做这块。两者是互补关系,不是竞争关系。

有没有AWS原生工具能找到调度机会?

没有。三个工具都不会标记"常开非生产资源"为可调度浪费,而对大多数组织来说这是最大的单个可控类别。按账号做工作日vs周末支出分析是最快的自助方式:业务时间公司的周末曲线如果是平的,就是信号。

这些工具多久刷新一次?

Trusted Advisor检查刷新周期在小时到天级别(也可以手动刷新);Compute Optimizer每天基于回溯窗口重新计算;Cost Explorer数据和所有账单面一样比计量滞后约一天。都不是实时的,但对这个用途来说也不需要实时。