简介
TL;DR:K8s Ops Agent 是一个开源的 Kubernetes 运维 SDK,封装 32 个操作技能,支持 MCP Server、CLI、OpenClaw 插件三种接入方式。用自然语言操作集群,告别手敲 kubectl。
为什么做这个项目?
运维 K8s 有几个痛点:
- 排查问题要串联十几条 kubectl 命令,效率低、容易漏
- AI 助手(Claude、Cursor)本身不能直接操作集群,需要自己开发桥接层
- 不同 AI 工具各自实现,重复造轮子
K8s Ops Agent 的目标:一套 SDK,所有 AI 工具共用,用自然语言完成 K8s 日常运维。
项目结构
项目采用 pnpm workspaces + Turborepo 的 monorepo 架构:
k8s-ops-agent/
├── packages/
│ ├── core/ # @k8s-ops/core - 平台无关的核心 SDK
│ ├── mcp-server/ # @k8s-ops/mcp - MCP Server
│ ├── cli/ # @k8s-ops/cli - CLI 工具
│ └── openclaw-plugin/ # @k8s-ops/openclaw - OpenClaw 插件
核心设计原则: @k8s-ops/core 与 AI 平台完全解耦,各适配器只是薄包装层。
32 个技能清单
| 分类 | 技能 |
|---|---|
| 核心资源 | Pod、Deployment、Service、Node、Namespace、Config、Ingress、Storage |
| 日常操作 | Exec、Port Forward、Logs、Metrics、Events、Event Analysis |
| 高级工作负载 | HPA、StatefulSet、DaemonSet、Job、CronJob、PDB、CRD、Gateway、Helm、YAML、Troubleshooting |
| 安全与分析 | RBAC、NetworkPolicy、Security Audit、Health、Topology、Cost |
| 主机监控 | sys-monitor |
快速上手
方式一:MCP Server(Claude Code / Cursor / VS Code)
第一步:克隆并构建
git clone https://github.com/CN-big-cabbage/k8s-ops-agent.git
cd k8s-ops-agent
pnpm install && pnpm build
第二步:配置 MCP
在 ~/.cursor/mcp.json 或 claude_desktop_config.json 中添加:
{
"mcpServers": {
"k8s-ops": {
"command": "node",
"args": ["/path/to/k8s-ops-agent/packages/mcp-server/dist/index.js"],
"env": {
"KUBECONFIG": "/Users/yourname/.kube/config"
}
}
}
}
第三步:重启 AI 工具,开始对话
列出所有命名空间中异常的 Pod
帮我排查 nginx-web 为什么起不来
执行集群晨检
把 payment-service 扩容到 10 个副本
方式二:CLI 直接使用
# 列出 Pod
node packages/cli/dist/bin/k8s-ops.js pod list
# 集群健康检查
node packages/cli/dist/bin/k8s-ops.js health cluster
# 查看 kube-system 下的 Deployment
node packages/cli/dist/bin/k8s-ops.js deploy list -n kube-system
典型工作流示例
故障排查:Pod 反复崩溃
传统方式:
kubectl get pod checkout-service-xxx -o wide
kubectl logs checkout-service-xxx
kubectl logs checkout-service-xxx --previous
kubectl describe pod checkout-service-xxx
kubectl get events --field-selector involvedObject.name=checkout-service-xxx
使用 K8s Ops Agent:
checkout-service 今天崩溃了 47 次,帮我找出原因
Agent 自动串联上述所有步骤,输出根因分析报告。
发布流程
把 production 命名空间的 payment-service 更新到镜像 v2.3.1
Agent 执行顺序:
- 读取当前 Deployment 配置
- 更新镜像版本
- 监控 rollout 状态
- 确认新 Pod Ready
- 有风险时采样日志
一键回滚
刚才的发布有问题,立即回滚 payment-service
Agent 读取历史版本,执行 rollback,确认恢复。
核心 SDK 二次开发
如果你想把这套能力嵌入自己的系统,直接用 @k8s-ops/core:
import { PodSkill } from '@k8s-ops/core'
const podSkill = new PodSkill({ kubeconfigPath: '~/.kube/config' })
// 列出 Pod
const pods = await podSkill.list({ namespace: 'production' })
// 获取日志
const logs = await podSkill.logs({
namespace: 'production',
podName: 'nginx-xxx',
tail: 100
})
与其他方案的对比
| 方案 | 集成方式 | 技能覆盖 | 平台支持 |
|---|---|---|---|
| K8s Ops Agent | MCP / CLI / Plugin | 32 个生产级技能 | Claude / Cursor / VS Code / OpenClaw |
| 自写 kubectl wrapper | 命令行 | 有限 | 单一 |
| 各平台自定义 tool | 平台绑定 | 分散 | 单一 |
开发参与
pnpm install # 安装依赖
pnpm build # 构建所有包
pnpm test # 运行测试
欢迎贡献:
- 新增技能(在
packages/core/src/skills/下参照现有结构) - 改进文档
- 提 Issue 反馈问题
GitHub:CN-big-cabbage/k8s-ops-agent
如果觉得有用,点个 Star ⭐ 支持一下!