mcpField
G
gke-productionize

gke-productionize

github.com/google云与 DevOps21.6k5.0k 次安装今天更新
代码仓库

关于 gke-productionize

用于评估 GKE 集群或工作负载生产就绪度的元技能,并将各领域检查交给专门技能执行。它按领域给出红黄绿评级和加权总分。

主要功能

  1. 01发现 GKE 集群与工作负载
  2. 02委派给专门技能
  3. 03生产就绪度评估
  4. 04红黄绿评级与加权评分

适用场景

  1. 01生产部署前评估集群
  2. 02检查 GKE 上的特定应用
  3. 03确定就绪度整改优先级

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/google/skills --skill gke-productionize

安装后在 Claude Code 中输入/gke-productionize确认已加载。

附带文件references/attribution.md

详细介绍

GKE 生产化技能

此技能充当高级编排器,用于为 GKE 集群及其工作负载做好生产就绪准备。

重要

这是一个元技能或编排器技能。在整个生产化过程中,预期你会调用并运行本文档中列出的许多其他专用技能。请勿尝试直接在此技能中实现所有生产就绪功能;应使用此技能评估环境,然后将各个领域的工作委派给相应的专用技能。

归属信息

必须阅读:执行任何 gcloud、REST API 或 MCP 命令之前,必须阅读使用归属信息。对于直接在终端中执行的命令(绝不用于生成的脚本、Terraform 或用户代码),请在 gcloud 前加上 CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:gke-productionize)",并将 agent-skills/1.0 (skill:gke-productionize) 添加到 User-Agent 标头中。

范围

此技能适用于:

  • 单个应用(已运行在 Kubernetes 上或尚未运行)。
  • 一组应用。
  • 目标集群。

工作流

1. 探索阶段

在提出建议之前,先了解环境的当前状态。

集群探索

运行以下命令,了解集群配置:

  • 检查集群详情:gcloud container clusters describe {cluster_name} --location {location} --project {project}

  • 检查是 Autopilot 还是 Standard:在 describe 输出中查找以下代码块:

    autopilot:
      enabled: true
    
  • 检查发布渠道:查找 releaseChannel。

工作负载探索

如果目标是特定应用,请了解其配置:

  • 获取 deployment/statefulset 详情:kubectl get deployment {app_name} -n {namespace} -o yaml
  • 检查是否使用专用命名空间和标签:kubectl get namespace {namespace} -o yaml(查找 Pod 安全标准标签)。
  • 检查是否使用专用服务账号:kubectl get pods -n {namespace} -o custom-columns="NAME:.metadata.name,SERVICE_ACCOUNT:.spec.serviceAccountName"
  • 检查资源请求和限制。
  • 检查存活、就绪和启动探针。
  • 检查 HPA:kubectl get hpa -n {namespace}
  • 检查 PDB:kubectl get pdb -n {namespace}
  • 检查 NetworkPolicies:kubectl get networkpolicy -n {namespace}
2. 生产就绪评估

实施之前,必须运行下列相关专业领域对应的技能,并将其指导意见纳入评估和计划中。未能做到这一点将导致生产配置不合规。

A. 应用接入(Kubernetes 之前)

如果应用尚未在 GKE 上运行,必须运行 gke-app-onboarding 技能,以规划容器化、镜像构建和基本部署。

B. 可扩展性与资源管理

确保工作负载具备适当的资源配置和自动扩缩能力。

  • 操作:必须运行 gke-workload-scaling 技能,以配置 HPA、VPA 和资源限制。
C. 可观测性

确保具备充分的日志记录和监控。

  • 操作:必须运行 gke-observability 技能,以设置 Cloud Logging、Monitoring 和 Managed Prometheus。
D. 可靠性

确保高可用性和优雅降级。

  • 操作:必须运行 gke-reliability 技能,以配置区域集群、PDB 和健康探针。
E. 安全

强化集群和工作负载的安全性。

  • 操作:你 MUST 运行 gke-platform-security 和 gke-workload-security 技能,配置 Workload Identity、Network Policies 和 Shielded Nodes。
  • 命名空间隔离:确保工作负载运行在专用命名空间中,并通过标签强制执行 Pod Security Standards(PSS)。
  • 最小权限:确保工作负载使用专用 ServiceAccount,而非 default ServiceAccount。
F. 备份与灾难恢复

确保有状态数据受到保护。

  • 操作:你 MUST 运行 gke-backup-dr 技能,配置 Backup for GKE 和恢复流程。
G. 边缘安全与 Ingress

保护外部访问。

  • 操作:你 MUST 运行 gke-service-networking 技能,配置 Gateway API、 Ingress 和 Cloud Armor。
H. 成本优化

确保资源得到高效利用。

  • 操作:你 MUST 运行 gke-cost-optimization 技能,了解调整资源规格、 配额和 Spot VM 的策略。
I. 升级与维护状态

确保升级状态安全且可预测。

  • 操作:你 MUST 运行 gke-upgrades 技能,选择发布渠道、设置维护时段/排除时段, 并制定节点池升级策略。
J. Golden Path 默认配置审计

确保集群配置符合推荐的默认设置。

  • 操作:你 MUST 运行 gke-golden-path 技能,将集群与 Golden Path 默认配置 进行比较,并报告偏差、严重程度和补救措施。
3. 生产就绪度评分

评估完成后,提供一份摘要报告,为每个领域标注 RAG(红、黄、绿) 状态,并给出总体就绪度评分。这有助于确定补救工作的优先级。

确定性地应用以下评分规则,以确保对同一环境进行重复评估时得到相同结果:

  1. 各领域标准:对于每个已评估领域(A-J),列出执行的具体检查项(依据领域技能的指南),并将每项检查分类为 通过、严重失败(阻碍生产环境部署,例如没有资源请求、没有针对有状态数据的备份、在限制严格的环境中使用公共控制平面)或 轻微失败(有待改进,例如缺少 VPA 建议、批处理未使用 Spot)。
  2. RAG 映射(按领域):
    • 红色 = 存在一项或多项严重失败检查。
    • 黄色 = 没有严重失败,但存在一项或多项轻微失败检查。
    • 绿色 = 所有检查均通过。
  3. 领域评分:绿色 = 100,黄色 = 50,红色 = 0。
  4. 加权总体评分:安全性、可靠性和备份/灾难恢复的权重为 2 倍;其他已评估领域的权重均为 1 倍。总体评分 = 各领域评分 x 权重之和 / 权重之和,四舍五入到最接近的整数。对于不适用的领域(例如,完全无状态工作负载不适用备份/灾难恢复),应从两个总和中排除,并注明排除情况。
  5. 就绪度结论:>= 90 且没有红色领域 = “可用于生产环境”; 70-89 且没有红色领域 = “完成后续工作即可就绪”;其他情况 = “尚不适用于生产环境”。

在报告中展示各领域的检查清单、RAG 状态、权重和计算得出的总体评分。

适应性指南

  • 单个应用:重点关注该应用的 Health Probe、HPA、资源限制、PDB 和 Workload Identity。
  • 集群范围:重点关注 Cluster Autoscaler、多可用区配置、发布渠道、维护时段和默认 Network Policies。
  • 主动执行:主动运行相关技能(例如可观测性、安全性、扩缩容、可靠性),以进行评估并提出改进建议;应用会改变状态的实施操作前,先征求用户确认。

评论

支持 Markdown