使用 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)。Graviton 实例迁移建议尤其值得关注,从 x86 迁移到 Arm 可期望最高 40% 的成本削减。Lambda 建议展示内存大小的优化,可削减过度的内存分配。由于 Lambda 按内存比例分配 CPU,内存优化也有助于缩短执行时间。EBS 建议提出从 gp2 迁移到 gp3、IOPS 和吞吐量的优化。gp3 相比 gp2 基线性能更高,且可独立设置 IOPS 和吞吐量,在大多数情况下可实现成本削减。
增强指标与建议的应用
标准情况下基于过去 14 天的 CloudWatch 指标生成建议,启用增强基础设施指标后可基于 93 天的数据获得更高精度的建议。可考虑月末批处理或季度结算高峰等短期内无法捕捉的使用模式来生成建议。建议以 1-5 的等级显示性能风险,优先应用风险低的建议。由于建议需要手动应用,建议建立定期(每月)确认建议并分阶段变更实例类型的运维流程。通过与 Organizations 集成,可统一管理所有账户的建议,可视化整个组织的成本削减机会。 关于资源优化的实践,也可参考Amazon 的相关书籍。
Compute Optimizer 的费用
Compute Optimizer 的基本功能免费使用。增强基础设施指标(93 天指标分析)为付费功能,每个资源每月约 0.0003272 美元。即使对 1,000 台 EC2 实例启用增强指标,每月也仅约 0.33 美元,考虑到建议精度提升带来的成本削减效果,强烈建议启用。外部指标导入(来自 Datadog、Dynatrace 等 APM 工具的指标)也无需额外费用,可将 CloudWatch 以外的指标源纳入建议输入。
总结
AWS Compute Optimizer 是通过基于机器学习的资源优化建议,在维持性能的同时削减成本的服务。分析 EC2、Lambda、EBS、ECS Fargate 的资源大小,提供包含 Graviton 迁移在内的具体建议。通过增强指标获取基于 93 天数据的稳定建议,分阶段合理化资源。