SuperAPI AI 工具集

verify_unused

数据与分析

查看项目

更新于 10-15 21:54

技能介绍

用途:在执行 DeleteCluster、gcloud container clusters delete 或 kubectl delete 等集群删除操作前,先校验目标 GKE 或 Kubernetes 集群是否真的未被使用,防止误删活跃环境、造成服务中断或数据永久丢失。

主要能力:依据三项启发式规则判断,任一命中即阻止删除。一是外部暴露:任一命名空间存在 LoadBalancer 类型 Service,或存在 Ingress、Gateway(Gateway API)、MultiClusterIngress 资源。二是持久化数据:任一命名空间存在 Bound 状态的 PersistentVolumeClaim。三是活跃计算:任一用户命名空间(含 default,排除 kube-system 及 gke- 前缀的系统命名空间)存在 Running 或 Pending 状态的 Pod。

使用方式:运行技能目录内的脚本,例如 python3 <skill_directory>/scripts/verify_unused.py --timeout 5.0,可选传入 --kubeconfig <path> 或 --context <name> 指定环境。退出码 0 表示 [UNUSED],可安全删除;退出码 1 表示 [ACTIVE],须停止删除并向用户展示检测到的活跃资源;退出码 2 表示 [FAIL-CLOSE],查询错误或超时,同样必须阻止删除并报告。

限制与可靠性:查询使用 --chunk-size=500 并在发现首个违规资源时立即终止以降低开销;同步查询设置 --request-timeout 超时,超时或 API 错误时采取失败关闭策略,而非默认安全。若未运行本校验或未强制 deletion_policy: VERIFY_UNUSED,不应删除集群。具体安装方式、依赖与更多参数暂未提供。