DEV 轨道聚焦:优化 AWS 成本:开发者工具与技术 (DEV318)
Source: Dev.to
AWS re:Invent 2025 – “周五早晨预算警报”
Steph Gooch(高级解决方案架构师倡导者,AWS)& Kenneth Attard(AWS 社区英雄 & Betsson Group 企业架构师)
会话概述
随着云应用的复杂性不断提升,成本优化变得至关重要。Steph 和 Kenneth 探讨了 AWS 原生工具和编码实践,在不牺牲性能或可扩展性的前提下降低费用。
观看完整会话:
[Insert video link]
1. 周五早晨预算警报
Steph 以每个开发者都害怕的情景开场:
“想象一下,今天是周五早上,你度过了轻松的一周,原本以为可以顺利度过这一天。结果收到一封邮件——你的 AWS 预算已超支。邮件抄送了你、你的经理、你的 FinOps 团队……每个人都在问到底发生了什么。”
目标: 通过实施主动的成本优化策略、利用 AI 工具,防止未来浪费,从而再也不收到这种邮件。
2. 简单优化 – 基础
Kenneth 分享了 Betsson Group(一家在 24 个市场运营的领先游戏公司)的真实案例优化。以 $100 K 的节省目标 为起点,他逐步讲解了基础性措施:
| 区域 | 优化措施 | 影响 |
|---|---|---|
| CloudTrail 合并 | 将多个 trail 合并为单一 organization trail,并删除多余的 trail。 | 消除冗余日志记录费用。 |
| EBS 卷清理 | 删除未挂载的卷;仅在合规需要时保留快照。 | 停止不必要的存储费用。 |
| 网络优化 | 移除重复的面向公网的 ELB(避免对公网 IP 和负载均衡器的双重计费)。退役未使用的 NAT 和 Transit Gateway。 | 削减双重计费和空闲网关费用。 |
| 使用 Graviton 进行右‑尺寸化 | 将 EC2、RDS 和 Lambda 工作负载迁移至 AWS Graviton(基于 ARM)的实例。 | 提升成本效率 并且 性能。 |
| 存储优化 | 启用 S3 Intelligent‑Tiering;将不常访问的数据迁移至 S3 Glacier。将基于 Intel 的 RDS 实例迁移至基于 Graviton 的实例。 | 在保持访问速度的同时降低存储支出。 |
3. Leveraging AI for Cost Optimization
Steph 演示了 AI 工具如何加速优化过程,重点关注 Amazon Q Developer 和 Kiro CLI。
3.1 AWS Cost Optimization Hub
Cost Optimization Hub 提供了一个统一的视图来查看节省机会。它:
- 按 操作类型、账户、区域和资源类型 对节省进行分类。
- 显示真实、可实现的节省(而非夸大的估算)。
- 与 AWS Compute Optimizer 集成,提供基于数据的详细建议。
3.2 Amazon Q Developer & Kiro CLI with MCPs
Model Context Protocol (MCP) 服务器让 AI 助手直接连接到 AWS 服务。使用带 MCP 的 Kiro CLI,Steph 展示了如何:
- 查询 Cost Optimization Hub 以获取计算推荐。
- 识别具体的资源 进行优化。
- 自动更新基础设施代码(例如 CloudFormation 模板)。
- 生成并执行 AWS CLI 命令 进行部署。
“登录控制台并在 Cost Optimization Hub 中查看所有节省所需的时间,与使用 Kiro 查找推荐并进行更改的时间非常相似。”
因此,AI 工具 识别 节省点 并 帮助更快地实现它们。
3.3 Infrastructure Optimization with Amazon Q
Amazon Q Developer 包含内置的优化功能。当你选择基础设施代码并点击 “Optimize” 时,它会返回三个维度的建议:
| Dimension | What’s evaluated |
|---|---|
| Cost | 高成本资源 → 更便宜的替代方案 |
| Architecture | 设计模式与服务选择 |
| Security | 潜在的漏洞 |
在演示中,Amazon Q 分析了一个 CloudFormation 模板,突出显示了显著的成本节约机会,并生成了更新后的模板。
4. 高级优化 – 深入探讨
4.1 Amazon CloudWatch 日志优化
Kenneth 分享了削减 CloudWatch 成本的策略:
- 删除不必要的日志组和数据。
- 设置合适的 保留期限(避免“永不过期”)。
- 优化应用代码以减少日志量。
- 对很少查询的日志使用 CloudWatch Logs Infrequent Access。
4.2 AWS Config 优化
对于具有自动扩缩的 Amazon EKS 集群,持续的 AWS Config 记录导致费用过高:
“我们在 EKS 上启用了 Config… 持续记录。在繁忙期间,EKS 自动扩缩,Config 记录了大量变更。”
解决方案: 将记录方式从 continuous(持续) 改为 daily(每日),显著降低 Config 成本。
4.3 数据传输优化
数据传输费用可能迅速飙升。Betsson 采用了多种策略:
| 策略 | 工作原理 |
|---|---|
| S3 网关端点 | 免费的 VPC 端点将 S3 流量保持在 AWS 网络内部,避免 NAT 网关的数据传输费用。 |
| 跨可用区流量削减 | 在每个可用区部署 NAT 网关;在可能的情况下,配置 Kubernetes 将流量保持在同一可用区内。 |
| 网络 ACL | 在子网层面阻止不需要的流量,防止产生不必要的数据处理费用。 |
5. 要点
- 从基础开始 – 合并日志、清理未使用的资源,并对工作负载进行合适的规模调整。
- 利用 Graviton 在 EC2、RDS 和 Lambda 上实现成本效益高的计算。
- 使用 AI 助手(Amazon Q、Kiro CLI)快速发现并应用建议。
- 微调可观测性和配置服务(CloudWatch、Config),以避免隐藏费用。
- 通过 VPC 端点、可用区感知架构和网络 ACL 优化数据传输。
实施这些做法可以帮助你避免令人头疼的“周五早晨预算警报”,并使云费用与业务目标保持一致。
关键组件
(在此添加您的组件详细信息)
AWS Lambda 优化
AWS Lambda 成本优化聚焦于三个关键领域:
- Graviton 迁移 – 将 Lambda 函数迁移到基于 ARM 的 Graviton 处理器。
- 合理调配 – 在架构更改后调整内存和 CPU 分配,以降低计算成本。
- 代码优化 – 简化函数逻辑并减少执行时间。
集中式 NAT 网关架构
Kenneth 介绍了一种高级网络优化方案:在专用的出站 VPC 中集中 NAT 网关,并通过 AWS Transit Gateway 进行连接。
成本比较(3 个 VPC,处理 2 TB 数据)
| 设置 | 每月费用 |
|---|---|
| 传统 | $190(3 个 NAT 网关) |
| 集中 | $322(3 个 NAT 网关 + Transit Gateway 附加组件 + 处理费用) |
“这就是成本节省,但对小规模部署并不适用。” – Kenneth
盈亏平衡点为 10 个 VPC;超过该数量后,随着 VPC 数量的增加,节省幅度可提升至 8 %。
使其生效的关键优化
- Amazon S3 网关端点 – 将流量降低 38.5 %–45 %
- 网络 ACL – 在源头阻止不需要的流量
- 集中式管理与监控
区域成本优化
选择正确的 AWS 区域可以显著影响成本。Kenneth 分享了一个 数据库迁移服务 (DMS) 示例:
区域(实例:dms.c6g.6xlarge) | 每月费用 |
|---|---|
| Frankfurt (eu‑central‑1) | $2,573 |
| Ireland (eu‑west‑1) | $2,300 |
| N. Virginia (us‑east‑1) | $1,619 |
| São Paulo (sa‑east‑1) | $4,057 |
在 N. Virginia 部署 DMS 实例而不是 São Paulo 可节省 $2,438 每月。相同的原则同样适用于许多其他服务,因为区域定价各不相同。
AWS WAF 成本优化
AWS WAF 提供 标准 和 高级 功能,两者的计费模式差别很大。
标准功能(已包含在基础费用中)
- 地理封锁规则
- 核心规则集
- 限速规则
- IP 信誉列表
高级功能(费用显著更高)
- Bot 控制
- 账户创建欺诈防护
- 账户劫持防护
“尽可能多地使用标准功能,如地理封锁规则、默认规则、核心规则集、限速、允许列表、阻止列表、IP 信誉,以最小化进入高级功能的流量。” – Kenneth
CAPTCHA 与 Challenge
| 功能 | 成本 | 适用场景 |
|---|---|---|
| CAPTCHA | 每 10 k 请求 $4 | 需要明确的用户交互时(例如验证人为人类)。 |
| Silent Challenge | 每百万响应 $0.40 | 可以在不显示 UI 元素的情况下阻止或缓解机器人时。 |
提示: 如果不需要用户交互,使用静默 Challenge 可以比 CAPTCHA 节省 > 99 % 的成本。
Web ACL 容量单元 (WCUs)
- 标准配额: 每个 Web ACL 1,500 WCUs。
- 成本效益扩展: 将 WAF 部署在 Amazon CloudFront 以及 下游的 Application Load Balancer 或 API Gateway(每个都有自己的 WAF)。
- 这实际上为您提供了 3,000 WCUs(1,500 + 1,500),无需额外购买容量。
结论: 尽可能利用标准功能,优先使用静默挑战而非 CAPTCHA,并采用分层 WAF 部署(CloudFront + ALB/API Gateway)来在不增加费用的情况下将 WCU 预算翻倍。
Source: …
防止未来浪费
服务控制策略 (SCP)
Steph 将 SCP 介绍为预防性的护栏:
“它们是防止在部署到云之前产生潜在浪费的非常有效的方式。”
在 组织 或 OU 级别设置的 SCP 可以阻止代价高昂的错误:
| 护栏 | 描述 | 示例 |
|---|---|---|
| 实例类型限制 | 在开发账户中阻止昂贵的实例系列;为合法使用场景提供绕过角色。 | 24xlarge、金属实例 |
| 存储默认值 | 强制对 ≤ 1 TB 的资源使用 gp3 卷(比 gp2 便宜约 20 %)。 | gp3 用于 EBS |
| NAT 网关控制 | 当使用集中式架构时,防止在单个账户中创建 NAT 网关。 | 在子账户中禁止 AWS::EC2::NatGateway |
| 必需标签 | 在资源创建前要求提供用于调度、自动化、安全和合规性的标签。 | Environment、Owner、CostCenter |
| Graviton 强制 | 对托管服务默认使用基于 Graviton 的实例类型,可实现约 10 % 的自动节省。 | t4g.micro、m6g.large |
| 区域限制 | 阻止在成本高或非预期的区域进行部署。 | 禁止 us‑west‑1、ap‑south‑1 |
Steph 演示了使用 Kiro CLI 来:
- 创建 SCP(以编程方式)。
- 测试 基础设施即代码(IaC)是否符合这些策略,且在实际部署前进行验证。
这种方法让团队能够利用 SCP 的优势——防止浪费——同时在策略准备好进行生产强制执行之前,将其保持在 dry‑run(干运行)模式。
背景:教会 AI 你的偏好
Amazon Q Developer 与 Kiro CLI 都支持 上下文文件,用于存储有关你的偏好、项目和最佳实践的信息。
Amazon Q Developer
Steph 创建了一条规则,规定 Lambda 函数应当:
- 使用 Graviton(
ARM64架构) - 始终包含 CloudWatch 日志组
- 设置适当的保留策略
有了此上下文后,像 “create a simple test CloudFormation for Lambda” 这样的请求会自动生成优化后的代码。
Kiro CLI
上下文文件的工作方式类似。使用 context add 指定包含优化偏好的文件,可确保所有生成的基础设施从一开始就遵循成本优化的最佳实践。
“如果你发现自己一直在重复与 AI 的对话,这些真的很方便。” – Steph
关键要点
- 更聪明地工作,而不是更辛苦 – 将 AI 工具(Amazon Q Developer、Kiro CLI)与 MCP 结合使用,加速优化实施。
- 永远优化易得的收益 – 部署服务控制策略和上下文文件,自动强制执行最佳实践。
- 使用 COM 节省时间 – Context、Optimize、MCPs 和 Save 是构建可持续成本优化实践的四个要素。
- 从小处着手 – 从本次会议中选择一个优化点并实施;小的成功会为更大的项目积累动力。
- 数据驱动决策 – 利用 AWS 成本优化中心和 AWS Compute Optimizer,在采取行动前了解推荐背后的数据。
终极目标
Steph 以愿景作结:一个持续优化、零浪费的 AWS 环境,治理、自动化和 AI 协同工作,以保持低成本和高性能。
“我希望你成功。我希望你节省所有这些费用,并将其重新投入。我希望你把它重新投入到新员工、新证书、新资源、应用程序的新功能上,任何能让你的业务变得更好的东西。”
成本优化并不是削减开支,而是消除浪费,从而让你能够投资于创新、增长以及为客户提供价值。
关于本系列
此帖子是 DEV Track Spotlight 系列的一部分,旨在聚焦 AWS re:Invent 2025 开发者社区(DEV)轨道 中的精彩议题。
DEV 轨道共呈现 60 场独特议程,由 93 位来自 AWS 社区的演讲者(包括 AWS Heroes、AWS Community Builders 与 AWS 用户组领袖)以及来自 AWS 与 Amazon 的演讲者共同分享。这些议程涵盖了前沿主题,包括:
- 🤖 GenAI 与 Agentic AI – 多代理系统、Strands Agents SDK、Amazon Bedrock
- 🛠️ 开发者工具 – K