关于 cost-optimization
用于审查云服务、SaaS 和基础设施支出的规划技能。它按五种杠杆归类优化机会,并根据节省额、工作量和风险安排优先级。
主要功能
- 01五种成本杠杆:淘汰、缩配、重构、议价、转换思路
- 02支出分类与大额项目审查
- 03按节省额、工作量和风险排序机会
- 04执行步骤与持续成本监控
- 05成本优化文档的输出结构
适用场景
- 01预算削减或领导层审查前检查支出
- 02审计云资源与 SaaS 订阅
- 03准备供应商合同续约
- 04扩展规模或迁移服务商前规划成本变更
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ rampstackco/ claude-skills --skill cost-optimization安装后在 Claude Code 中输入/cost-optimization确认已加载。
附带文件README.mdreferences/cloud-audit-checklist.md
详细介绍
成本优化
审查云服务、SaaS 和基础设施支出。削减不值得继续付费的项目。为配置过高的资源调整规格。对可协商的费用进行谈判,同时确保现有系统正常运行。
适用场景
- 季度或年度成本审查
- 财务部门发现支出不断增长
- 即将续签供应商合同
- 需要削减预算
- 新领导层想了解具体数字
- 在不同服务商之间迁移(成本是决策依据之一)
- 大规模扩展前进行审计(在浪费随规模扩大前及时发现)
不适用场景
- 正在处理事件响应(使用
incident-response) - 涉及基础设施的性能问题(使用
performance-optimization) - 评估新的采购供应商(使用
vendor-evaluation) - 人员或组织成本(不在此技能范围内)
所需输入
- 当前成本(按月统计,最好提供过去 12 个月的数据)
- 按服务或供应商细分的成本
- 云资源清单(实例、数据库、存储等)
- SaaS 订阅清单
- 每项成本的负责人(谁决定支出、谁在使用)
- 约束条件(合规、性能、合同条款)
框架:5 种杠杆
每个成本优化机会都属于以下某一种杠杆。
杠杆 1:消除
停止为无人使用的项目付费。
- 闲置资源(正在运行但无人使用的实例、数据库、环境)
- 无人登录的订阅
- 重复工具(多个工具完成相同工作)
- 仍在产生费用的旧项目
- 应该拆除但尚未拆除的测试环境
- 被遗忘的域名、备份、快照和日志
这通常是首次审计中最大的优化机会,往往能节省 10-30% 的支出。
杠杆 2:调整规格
按实际用量付费,而非按三年前为应对极端情况而预留的容量付费。
- 规格过高的实例(CPU 和内存利用率低)
- 过度配置的数据库(存储和吞吐量远高于实际用量)
- 购买过多的 SaaS 席位
- 标准方案足以满足需求,却购买了高级方案
- 为非关键系统配置高可用架构
调整规格需要基于真实的使用数据,而非理论需求。
杠杆 3:重构
用更低成本的结构处理相同工作负载。
- 预留或承诺使用定价(承诺 1-3 年可享 30-70% 折扣)
- 对容错性强的工作使用竞价或可抢占实例
- 对很少访问的数据使用冷存储
- 根据访问模式分层存储(热、温、冷)
- 使用 CDN 缓存减少源站负载
- 压缩和去重
- 对突发性工作负载使用无服务器架构
- 对稳定的工作负载使用预留实例
合适的结构取决于访问模式。结构不匹配会增加成本。
杠杆 4:谈判
以更低价格购买相同服务。
- 年度合同通常比月付费率更低
- 达到更高档位可享受批量折扣
- 为可预测的工作负载签订多年承诺
- 捆绑优惠(将服务整合到同一家供应商)
- 续约谈判(供应商预期你会提出要求)
- RFP / 竞争性投标(借助替代方案作为谈判筹码)
大多数企业级供应商都可以谈判。大多数 SaaS 供应商则不会,除非购买更高档位。面向个人用户的服务通常不能谈判。
杠杆 5:重新审视
换个角度提出问题。
- 自建还是购买:也许规模扩大后自建更便宜
- 购买还是自建:也许规模较小时外包更便宜
- 不同架构(例如,单体架构与微服务)具有不同的成本特征
- 面向不同受众(是否所有客户都需要相同档位?)
- 采用不同技术栈(开源还是商业方案)
重新审视是见效周期最长的杠杆。即使目前无法采取行动,也值得考虑。
工作流程
第 1 步:提取支出数据
按服务、供应商,以及(如可行)团队或项目获取每月成本。
对于云服务(AWS、GCP、Azure):使用计费控制台和成本分析工具。 对于 SaaS:查看各供应商的计费门户,并在可用时使用 SaaS 管理工具。 对于其他支出:使用银行对账单和会计系统导出数据。
至少获取 12 个月的数据。趋势与绝对金额同样重要。
第 2 步:分类
将支出整理到以下类别:
- 托管 / 计算
- 存储
- 数据库
- 网络 / CDN
- 监控 / 可观测性
- 电子邮件
- CMS / 托管平台
- 分析 / 营销
- 生产力 / 协作
- 开发工具
- 安全 / 合规
- 其他
类别因业务而异。重点是:将相似成本归为一类,便于比较。
第 3 步:找出最大的支出项
80/20 法则。通常,20% 的供应商占总支出的 80%。
将审计重点放在前 80% 的支出上。长尾支出也可以清理,但单项通常很难带来显著节省。
第 4 步:应用 5 个杠杆
针对每个主要支出项,逐一检查以下杠杆:
| 杠杆 | 问题 |
|---|---|
| 淘汰 | 有人在用吗?能否停止使用? |
| 调整规模 | 我们是否为未使用的容量付费? |
| 重构 | 是否有更便宜的定价模式或服务层级? |
| 谈判 | 上次续约是什么时候?当时谈过价格吗? |
| 重新思考 | 这真的是正确的做法吗? |
记录机会、工作量、风险和预计节省金额。
第 5 步:确定优先级
在 2x2 矩阵中绘制各项机会:
- Y 轴:节省金额
- X 轴:工作量
象限:
- 高节省、低工作量:优先处理
- 高节省、高工作量:做好规划
- 低节省、低工作量:有空时处理
- 低节省、高工作量:跳过
还要考虑风险:
- 淘汰无人使用的东西:低风险
- 调整数据库规模:中等风险(先在预发布环境测试)
- 替换关键依赖项:高风险(谨慎规划)
第 6 步:落实容易见效的措施
对于每个容易见效的机会:
- 记录变更
- 获得负责人批准
- 执行变更
- 监控是否产生意外影响
- 在下一个账单周期确认成本是否降低
容易见效的措施通常包括:
- 取消未使用的订阅
- 拆除闲置资源
- 在非工作时间关闭开发环境
- 将冷数据迁移到更便宜的存储层级
第 7 步:规划工作量较大的事项
对于工作量较大的机会:
- 详细说明变更(使用
pm-spec-writing制定计划) - 在预发布环境测试
- 逐步推出
- 验证成本影响
例如:
- 迁移到预留实例
- 整合监控供应商
- 迁移到其他 CMS 以降低成本
第 8 步:建立持续可见性
优化不是一次性工作。成本会逐渐回升。
- 每月至少进行一次成本审查
- 成本仪表板(当前支出、趋势、按类别划分)
- 设置成本激增告警(例如,每日支出超过阈值时)
- 为云资源添加标签或标记(按团队或项目查看成本)
- 每季度进行一次深入审查
第 9 步:续约时谈判
对于即将续约的供应商合同:
- 提前 60–90 天开始沟通
- 确定备选方案(即使不切换供应商也要准备)
- 询问多年期折扣
- 询问用量阶梯价格
- 询问能否调整用量规模
- 愿意终止合作(大多数供应商都会想办法留住你)
疫情前,许多供应商会自动续约并涨价。疫情后,许多供应商迫切希望留住客户。主动提出要求。
第 10 步:制定政策
今后:
- 评估新供应商时必须说明成本合理性
- 资源配置需要达到相应审批门槛
- 云资源必须添加标签和标记
- 将季度审查列入日历
- 明确成本归属
没有政策,成本就会逐渐攀升。
各类别的常见优化机会
托管和计算
- 对可预测的工作负载采用预留或承诺使用定价(节省 30%–70%)
- 对容错批处理任务使用竞价或可抢占实例
- 针对负载波动启用自动扩缩容
- 选择合适的实例系列(计算优化型、内存优化型等)
- 在非工作时间关闭开发 / 预发布实例
存储
- 使用生命周期策略,将旧数据迁移到更便宜的层级
- 删除旧日志、备份和快照
- 对归档数据进行压缩
- 注意对象版本控制成本(每个版本都会作为对象存储)
数据库
- 根据实际 CPU/内存使用情况调整规模
- 为可预测的工作负载预留容量
- 为读取密集型工作负载配置只读副本(比扩展主实例更便宜)
- 删除未使用的索引(索引会占用存储空间并影响写入性能)
- 归档或删除旧数据
网络和 CDN
- CDN 可降低源站流出流量成本(通常是最大的成本类别)
- 对传输数据进行压缩
- 优化图像和视频
- 根据区域进行路由
监控和可观测性
- 对日志采样(不要摄取高流量来源的 100% 日志)
- 设置保留策略(需要保留 90 天还是 30 天?)
- 尽可能整合工具
- 对非关键需求使用免费或开源工具
SaaS
- 按席位审查登录情况(每席位收费 $X,闲置用户就意味着浪费 $X)
- 在续约时重新谈判
- 改为按年付费以享受折扣
- 整合功能重叠的工具
失败模式
削减成本却导致问题。 未经测试就大幅缩减资源规模会造成服务中断。服务中断的成本通常远高于节省的费用。
优化耗时超过节省的成本。 一个团队花一季度时间,每年节省 $5K。这笔账算不过来。优先关注节省额高于投入的机会。
续约自动驾驶。 年度续约未经审查就自动完成。将续约列入日历。
没有标签。 云支出不断增长,却没人知道费用归谁。第一天起就为所有资源添加标签。
超出免费额度。 “它使用的是免费额度。”后来超出了额度,账单令人措手不及。为免费额度服务设置提醒。
环境没有区分。 为了“与生产环境一致”,将预发布环境配置为生产级别,成本与生产环境一样高。通常没有必要。
搁置的旧项目。 “旧项目还在运行。”为什么?通常是因为根本没人使用它。进行审计并将其关闭。
非高级需求却使用高级套餐。 因为有人想要某个功能而选择企业套餐,但该功能后来已加入较低级别的套餐。重新检查。
以供应商锁定为由接受高成本。 “我们无法切换。”这不是接受过高费用的理由,而是需要制定应对计划的战略问题。
忽视大头,只优化小项。 每月在工具上省下 $50,却让每月 $5K 浪费在过度配置的基础设施上。先从整体着手。
因小失大。 为了每月省下 $20 而砍掉实用工具,结果在手动工作上浪费数小时。能让成本回收的工具不应被砍掉。
没有再投资。 每一分钱的节省都计入利润,却没有任何资金再投入升级或扩容。节省成本和提升能力并非二选一。
输出格式
成本优化文档包括:
- 当前状态: 总支出、按类别划分的支出及趋势
- 主要项目: 成本最高的项目
- 优化机会: 按优化杠杆分类(消除/调整规模/重构/谈判/重新定位)
- 优先级列表: 包含节省金额、投入和风险
- 行动计划: 负责人、日期
- 已执行的快速见效措施: 已完成的事项及结果
- 持续治理: 仪表板、审查频率、标签、审批阈值
如果无法获取所需数据
此技能的输出依赖其无法自行生成的数据、测量结果或工具结果。如果所需输入、工具或数据源不可用或无法核实,获准的输出应是交付内容,并注明缺口:需要什么、实际获取或核实了什么,以及输出中哪些部分会受到影响。严禁为了完成交付内容而捏造、估算或插算所需数字。说明缺口本身就是完整答复。
参考文件
references/cloud-audit-checklist.md:审计云账户(计算、存储、数据库、网络、监控)以发现浪费和调整资源规模机会的实用指南。