库贝试点 是一个开源 Kubernetes 故障排除驾驶舱,由 Workstation 工程团队。它结合了AI辅助诊断(副驾驶)、SRE风格的集群浏览(飞行员)和策略控制的修复(自动驾驶仪)因此平台、SRE 和 DevOps 团队从嘈杂的信号转向安全修复 - 无需在事件中处理 kubectl 选项卡。产品站点: kubepilot.org。来源: github.com/bwalia/kubepilot.
- 什么: 开源 K8s 驾驶舱 — CoPilot (AI RCA) + Pilot (SRE 浏览器) + AutoPilot (门控修复程序)。
- WHO: SRE、DevOps、平台/AIOps 团队需要更快的 MTTR 和可审核的自动化。
- 跑步: 二进制
serve上:8383,Helm 图表,Docker (ghcr.io/kubepilot/kubepilot),iOS 伴侣。 - 人工智能: 通过 Ollama 本地 LLM;复制提示; MCP 服务器位于:9090。
- 安全: 只读 Pilot 默认值; AutoPilot 关闭/空运行/激活;信心底线;黑名单;终止开关;决策分类帐。
1. 观看演练
youtu.be/CsiJWpfncqA — 巴林德·瓦利亚,Workstation。
2.KubePilot解决的问题
现代集群发出的信号比人类在单个页面中可以分类的信号还要多:CrashLoops、ImagePullBackOff、OOMKills、节点压力、片状探针和 YAML 漂移。典型的反应包括:
kubectl历史记录和 shell 脚本,- 浏览器 UI(Lens / Rancher / 仪表板),
- 登录第三个工具,
- 使用粘贴的 YAML 进行 LLM 聊天(并且没有集群身份验证)。
当 SLA 是几分钟时,这种碎片会消耗几分钟。 KubePilot 将循环折叠到一个驾驶舱中: 现场→询问→验证→修复.
3. 模式A——CoPilot(AI辅助故障排除)
CoPilot 是自然语言和自动化 RCA 界面:
- 用简单的英语询问操作问题(“为什么在产品中使用 checkout CrashLooping?”)。
- 一键式 人工智能分析 关于问题窗格和事件。
- 使用证据链、置信度、风险、建议命令、YAML 修复和后续步骤进行根本原因分析。
- CrashLoop、OOM、ImagePull 和节点压力模式的异常检测。
- 复制提示 将准确的诊断提示重复用于您的首选型号。
- 专为 Ollama / 本地型号 因此集群上下文可以保留在您的网络上。
4. 模式B——Pilot(SRE故障排除浏览器)
Pilot 是 Lens/Rancher 风格的只读工作台,用于在突变前进行验证:
- 浏览部署、StatefulSet、DaemonSet、作业、服务、入口、ConfigMap、Secret、PVC。
- Pod 工作台:概述、容器、事件、日志、净化的 YAML、重启计数、正常运行时间。
- 实时集群资源指标(CPU、内存、磁盘)—Longhorn 感知(如果适用)。
- 服务拓扑画布:入口 → 服务 → 工作负载 → 具有状态颜色和端口的 Pod。
- 节点 LAN、WAN 和隧道(例如 WireGuard / flannel)IP 分类 — 不仅仅是覆盖地址。
- 来自 UI 的端口转发隧道;多集群 kubeconfig 上传和上下文切换,无需重启。
5. 模式C——AutoPilot(带安全栏的AI固定器)
AutoPilot 通过可审核的自我修复来关闭循环 - 绝不将“YOLO apply”作为默认设置:
| 控制 | 目的 |
|---|---|
| 模式:关闭/空运行/活动 | 申请前预览;在需要时让自动化保持停放状态 |
| 置信底线 | 跳过低置信度 RCA,而不是猜测 |
| 命名空间阻止列表和操作允许列表 | 保护 kube-system / prod 命名空间;限制突变类型 |
| 冷却时间和每小时上限 | 防止补救风暴 |
| 终止开关 | 操作员一键暂停 |
| 决策账本 | 执行、跳过、升级、失败——审计跟踪 |
| CR 代码升级 | 人类对危险行为的批准 |
6. 全特征图(来自 kubepilot.org)
- 预构建的操作手册: 七个固执己见的诊断工作流程;具有 fsnotify 热重载的自定义 YAML Runbook(用户 ID 覆盖内置命令)。
- 耐用 RCA 历史: 可选的嵌入式 SQLite(WAL,无 CGO),可在重新启动时保留报告和异常情况。
- 警报和时间表: 警告、事件、异常、RCA 作为可搜索的操作时间线;可选的 Slack 事件卡。
- AI健康芯片: 在发生事件之前知道 Ollama 已准备好。
- 安全第一默认值: 可选的身份验证、只读浏览、突变门、CORS 策略。
- MCP代理协议: 内置 MCP 服务器,用于多集群代理编排和编程访问。
- 本机 iOS 伴侣: SwiftUI 应用程序 — 健康卡、pod、日志、RCA、Face ID、小部件、Siri/应用程序意图。
7. 安装选项
源构建的先决条件:Go 1.22+、Node.js 18+、可访问的集群 + kubeconfig; Ollama推荐用于本地AI。
7.1 从源代码构建
git clone https://github.com/bwalia/kubepilot.git cd kubepilot make dashboard-install make dashboard make build KUBEPILOT_KUBECONFIG="$HOME/.kube/config" ./dist/kubepilot serve --dashboard-port=8383 # Dashboard/API: http://localhost:8383 # MCP server: :9090
7.2 Helm(集群安装)
helm repo add kubepilot https://bwalia.github.io/kubepilot helm repo update helm upgrade --install kubepilot kubepilot/kubepilot \ -n kubepilot --create-namespace kubectl port-forward svc/kubepilot -n kubepilot 8080:8080 # Open http://localhost:8080
还支持:NodePort、Ingress (+ cert-manager TLS)、LoadBalancer 和值覆盖 — 请参阅 GitHub 上的图表自述文件。
7.3 码头工人
docker run --rm -p 8383:8383 -p 9090:9090 \ -v "$HOME/.kube:/root/.kube:ro" \ ghcr.io/kubepilot/kubepilot:latest \ serve --dashboard-port=8383
7.4 iOS 伴侣
cd ios brew install xcodegen ./generate.sh open KubePilot.xcodeproj # Point the app at http://<server-ip>:8383
八、推荐运营模式
- 第 0 天: 针对非产品集群以只读方式运行 Pilot;电线Ollama;确认AI健康芯片。
- 第一天: 对已知的坏 Pod 使用 CoPilot AI 分析;将 RCA 与您的操作手册进行比较;将复制提示调整到您的团队 LLM 中。
- 第二天: 启用自动驾驶仪 试运行 仅有的;检查决策分类账一周。
- 第 3 天+: 通过严格的允许列表、置信底线和 Slack 警报,促进选定的命名空间处于活动状态;保持 kube 系统处于阻塞状态。
- 总是: 排练终止开关;危险突变的 CR 代码路径;身份验证背后的 MCP 工具(请参阅我们的 代理安全简报).
9. 生产检查表
- 为任何可通过网络访问的仪表板启用身份验证。
- ☐ AutoPilot 在空运行中启动;仅在分类帐审核后才有效。
- 命名空间阻止列表包括系统/共享命名空间。
- 每小时上限和冷却时间设置为低于风暴阈值。
- 通过 AI 健康状况监控 Ollama(或批准的 LLM 路径)。
- 针对高严重性异常的 Slack 或寻呼机集成。
- GitOps 仍然拥有理想的状态——AutoPilot 是一个战术修复器,而不是 Argo CD / Flux 的替代品。
- ☐ 明星和曲目发行: github.com/bwalia/kubepilot.
10. 为什么 Workstation 发布这个开源代码
Workstation 为真正的运营团队构建自动化平台。 KubePilot 是我们的赌注 AIOps 仅在诊断和修复共享同一个证据线索时才起作用 ——当自动化像人类 SRE 一样被控制时,就会发生变化。我们以开源方式发布它,以便平台团队可以在自己的网络上运行它、扩展运行手册并连接 MCP 代理,而无需锁定供应商。
开始于 kubepilot.org, 克隆 回购协议,并观看演练 YouTube。同伴总结: 博客文章.