使用 AWS Compute Optimizer 实现资源优化 - 实例的合理调整

通过机器学习分析 CloudWatch 指标,生成优化 EC2 / Lambda / EBS / ECS Fargate 资源大小的建议。本文讲解 Graviton 迁移建议以及利用增强指标提高精度的方法。

Compute Optimizer 概述

AWS Compute Optimizer 是通过机器学习分析 CloudWatch 指标,为 EC2 实例、Lambda 函数、EBS 卷和 ECSFargate 任务提供资源大小优化建议的服务。它检测过度配置的资源,并以金额形式展示成本削减的机会。建议是朝着在维持当前性能的同时降低成本的方向生成的。Trusted Advisor 也提供资源优化建议,但 Compute Optimizer 通过机器学习分析使用情况,并会给出具体的实例类型候选。Cost Explorer 的建议以优化预留实例和 Savings Plans 的购买为中心,而 Compute Optimizer 则聚焦于资源大小的合理调整。

建议类型与 Graviton 迁移

EC2 的建议会展示当前实例类型与推荐类型的比较、预估的成本削减额以及性能风险。建议的示例包括更改实例系列(m5 → m6i)、更改大小(xlarge → large)以及迁移到 Graviton(m5 → m6g)。AWS 公布,基于 Graviton 的实例与同等的基于 x86 的 EC2 实例相比,成本最多低 20%(截至 2026 年 10 月)。Lambda 的建议会展示内存大小的优化,可以削减过多的内存分配。由于 Lambda 按内存比例分配 CPU,优化内存也会带来执行时间的缩短。EBS 的建议会提出从 gp2 迁移到 gp3 以及优化 IOPS 和吞吐量。与 gp2 相比,gp3 的基准性能更高,并且可以独立设置 IOPS 和吞吐量,因此从 gp2 迁移有时可以降低成本。

增强指标与建议的应用

默认情况下,建议基于过去 14 天的 CloudWatch 指标生成,但启用增强基础设施指标后,可以获得基于 93 天数据的更高精度的建议。这样生成的建议会考虑月末批处理和季度结算时的峰值等短期内无法捕捉到的使用模式。建议附有性能风险评估,一种做法是优先应用风险低的建议。可以考虑的运维方式是定期(如每月)查看建议,并分阶段更改实例类型。通过与 Organizations 集成,可以集中管理所有账户的建议,使整个组织的成本削减机会可视化。

Compute Optimizer 的费用

Compute Optimizer 的基本功能可以免费使用。增强基础设施指标(93 天的指标分析)需要付费,按资源每运行 1 小时约 0.0003360215 美元计费(截至 2026 年 10 月)。由于费用与资源数量和运行时间成正比,也有一种用法是只对需要长期指标的资源启用。还提供了将 Datadog 和 Dynatrace 等 APM 工具的指标加入建议输入的功能。

如何解读建议并做出判断

Compute Optimizer 会分析资源是过度配置还是配置不足,并展示合适大小的候选。查看建议时,不仅确认所展示的预计削减金额,也一并确认变更带来的性能风险。过度配置的资源可以通过缩小来降低成本,而配置不足的资源如果不增强就会引发性能问题。由于建议会显示其依据的是哪些指标,因此对照自身工作负载的特性来判断其合理性。重要的是不要机械地照做,而是结合峰值时的负载和未来的增长来判断是否采纳建议。

应用建议的工作流程

应用建议时,不是直接反映到生产环境,而是按照谨慎的步骤进行。首先,在验证环境中确认目标工作负载以推荐的大小运行是否没有问题。特别是在缩小规格时,判断峰值时性能是否足够。如果没有问题,就从影响小的资源开始分阶段应用,并测量变更后的性能和成本。在推进过程中,确认是否取得了预期的效果、性能是否出现下降。由于一次变更大量资源会使影响难以区分,因此循环执行验证 / 分阶段应用 / 测量,会带来安全的优化。

组织层面的持续优化

资源优化不是一次性的工作,而是应当持续推进的事情。由于工作负载会随着时间变化,因此定期重新审视建议,并调整为当时最合适的大小。在运营多个账户的组织中,跨越整体掌握建议,并从削减效果大的资源开始优先处理。不把优化交给负责人个人判断,而是作为定期审查的流程融入组织,就可以防止无谓的成本不断累积。持续优化的机制是使云成本长期保持在低水平的关键。

与其他成本工具的协作

Compute Optimizer 与其他成本管理方法结合使用,效果会提高。用可视化成本的工具掌握整体支出趋势,用 Compute Optimizer 判断各个资源的最佳大小,用承诺折扣降低稳定运行部分的单价,以这样的方式分担角色。先把资源调整为合适的大小,再针对这一稳定的使用量购买折扣,就可以毫无浪费地控制成本。将这些结合起来,把可视化 / 合理调整 / 购买折扣作为一个连续的循环来运行,就是体系化成本优化的实践。

总结

AWS Compute Optimizer 是通过基于机器学习的资源优化建议,在维持性能的同时降低成本的服务。它分析 EC2、Lambda、EBS、ECS Fargate 的资源大小,并提出包括 Graviton 迁移在内的具体建议。启用增强指标后,可以获得基于 93 天数据的建议,作为分阶段合理调整的依据。

参考资料(AWS 官方)

本页的第一手信息来源是 AWS 官方网站及官方文档。最新的规格与价格请以下列官方页面为准。

如本页内容与官方文档不一致,请以官方文档为准。

分享