SuperAPI AI 工具集

gcp-resource-optimizer

部署与运维

查看项目

更新于 10-15 09:41

技能介绍

用途

GCP Resource Optimizer 用于优化 Google Cloud Platform(GCP)的资源分配,并高效管理云额度。它适合在规划 GCP 部署、分析云支出、最大化即将到期额度价值等场景中使用。

主要能力

额度消耗策略

  • 额度到期规划:审计当前用量(gcloud billing accounts describe ACCOUNT_ID);计算消耗速率(总额度 ÷ 剩余天数 = 所需每日支出);识别高价值用途。
  • 高价值额度用途:优先用于产生持久价值的任务,如训练 ML 模型(产物持久)、构建容器镜像、生成数据集、对累积工作运行批处理;临时性用途(如计算实例、开发环境、测试基础设施)应策略性使用。

成本优化模式

  • Compute Engine:通过 recommender 检查实例规格建议(google.compute.instance.MachineTypeRecommender);按需求选择机型,如通用工作负载用 e2-medium、内存密集型用 n2-highmem、CPU 突发用 e2-micro/small、ML 训练用 n1 + GPU、可容忍中断用 Spot VM(折扣 60-91%)。Spot/抢占式虚拟机比标准机型便宜 60-91%,可能提前 30 秒收到终止通知,适合批处理、容错工作负载和开发,不适合生产、有状态服务。
  • Cloud Run:通过配置 containerConcurrency: 80、timeoutSeconds: 300、minScale: '0'、maxScale: '10'、cpu-throttling: 'true' 来减少冷启动和成本。
  • Cloud Storage:按访问频率选择存储类别(Standard 频繁访问约 $0.020/GB/月、Nearline 每月访问约 $0.010、Coldline 每季度访问约 $0.004、Archive 每年访问约 $0.0012);通过生命周期规则在 30 天转 Nearline、90 天转 Coldline、365 天删除。
  • BigQuery:设置最大计费字节数(@maximumBytesBilled);通过分区和聚簇降低查询成本。

预算告警

使用 gcloud billing budgets create 创建预算,可设置 50%、90%、100% 等阈值规则。

资源清理

查找未使用资源:未使用磁盘(gcloud compute disks list --filter="NOT users:*")、未使用 IP(gcloud compute addresses list --filter="status=RESERVED")、按 CPU 查找空闲虚拟机。提供清理脚本示例,列出(而非删除)未使用磁盘、保留 IP 和超过 30 天的快照。

面向成本的架构模式

  • Serverless 优先:请求 → Cloud Run → Firestore(可缩容到零、按操作付费),对比请求 → GKE → Cloud SQL(始终运行)。
  • 批处理:Pub/Sub → Cloud Functions → BigQuery(批量加载比流式更便宜)。
  • 开发与生产:开发环境使用 Spot/抢占式虚拟机、较小机型、可缩容到零的服务、共享资源;生产环境使用承诺使用折扣(1-3 年)、规格合适的专用实例、仅在需要处冗余。

监控设置

启用账单导出到 BigQuery,并通过查询按服务汇总成本。

使用方式

该技能以文档和命令示例形式提供,包含 gcloud 命令、YAML 配置、JSON 生命周期规则、SQL 查询和 Bash 脚本。用户可参照这些示例在 GCP 环境中执行相应操作。

适用场景

  • 规划 GCP 部署
  • 分析云支出
  • 最大化即将到期额度的价值
  • 优化 Compute Engine、Cloud Run、Cloud Storage、BigQuery 成本
  • 清理未使用资源

限制

资料未提供该技能的安装方式、运行环境要求、收费信息或具体效果数据。清理脚本示例标注“运行前请审查”,实际执行需谨慎。