OpsAgent:为运维注入 AI 智能

多模型对话、智能诊断、可视化执行,一站式运维助手

核心功能

智能分析命令

一键理解复杂 Kubernetes 操作的意图与影响。

多模型对话支持

插拔式设计支持 OpenAI、阿里通义等多种大语言模型。

命令可视化结果

图表化展示资源状态与执行结果,更直观。

多集群支持

统一控制和管理多个 Kubernetes 集群。

用户权限与审计

保障操作安全可追溯 (功能规划中)。

上下文感知

能够理解对话上下文,提供连贯的运维支持。

交互演示

直观展示 OpsAgent 如何解决常见的 K8s 运维问题。

场景1: Pod Pending原因排查

用户输入:"我的 Pod 'test... ' 为什么一直 Pending?"

OpsAgent 分析后可能回复:

  1. 检查 Pod 事件:kubectl describe pod test...
  2. 查看节点资源是否充足:kubectl describe node [node-name]
  3. 检查相关的 PVC 状态 (如果有关联):kubectl get pvc [pvc-name]

AI 会进一步解释可能的原因,如资源不足、调度失败、镜像拉取错误等。

OpsAgent 交互演示

场景2: AI 自助处理磁盘告警

用户输入:"收到节点 disk-pressure 告警,请帮我处理"

OpsAgent 自动执行以下步骤:

  1. 分析告警信息,识别问题节点
  2. 执行磁盘使用情况分析
  3. 智能清理临时文件和日志
  4. 提供优化建议和预防措施

AI 会持续监控处理进度,并在完成后提供详细报告。

AI 自助处理流程图

技术架构

OpsAgent 架构图

OpsAgent 系统架构图

简化架构图说明:

OpsAgent 采用分层架构,清晰解耦:

  • API 层: 接收用户请求,进行认证和初步处理。
  • Assistant 层: 核心智能引擎,负责对话管理、上下文理解和任务分解。
  • Opsagent 层: 对接多种大语言模型,进行推理、决策和生成。
  • 工具层: 执行具体操作,如调用 Kubectl、运行 Python 脚本、执行 Trivy 扫描或进行智能资源查询。
  • 外部交互: 主要以readonly权限和Kubernetes API Server 交互管理集群资源。

核心流程: 用户请求 -> API层 -> Assistant层 -> (调用 LLM层 进行决策,调用 工具层 执行任务) -> 与 Kubernetes 集群交互 -> 结果经 Assistant层 整合后 -> API层 返回给用户。

主要技术栈

前端: React + Tailwind CSS + dify

后端: Go (Gin) + OpenAI Go Client

AI 集成: 可插拔设计,支持 OpenAI, 谷歌 Gemini, 阿里通义千问等 LLM

核心库: Cobra (CLI), Viper (配置)

部署: Docker & Kubernetes

发展历程 & 更新日志 (Timeline)

~ Late 2023 / Early 2024 (v2.0.0)

项目启动 & 核心 LLM 集成

OpsAgent (原 k8s-agent) 项目初始化,目标是构建基于 LLM 的 K8s 集群管理与运维助手。早期版本使用 OpenAI Assistant API 实现基本问答。

Ref: 7cfacdd (init)
Q1 2024

引入 Function Calling & 多模型支持

架构升级,支持 Function Calling,允许 LLM 调用 kubectl 等工具。为降低成本和提高灵活性,适配了阿里的通义千问 (Qwen) 模型。

Ref: fe0b78c (Qwen support)
Q1/Q2 2024 (Pre-v0.1.0)

功能增强 & 审计日志

持续迭代,增强 Kubernetes 上下文处理、工具调用能力,并增加了初步的审计日志系统及数据库检查功能。

Ref: fdf6a42 (Execute logic), 8e4af38, 525116f (Audit)
Q2 2024 (v0.0.9)

引入 RAG 提升准确性

集成 RAG (Retrieval-Augmented Generation) 能力,结合业务知识库,显著减少 LLM 幻觉,提高特定场景下的回复准确度。更新了相关 API 和文档。

Ref: 83eb6cf, 3b0a9a4 (RAG), a104c56 (Context API)
Mid 2024 (v0.1.0)

代码重构 & 稳定性提升

进行了一轮代码重构,优化 Prompt 设计,修复了中间结果处理等关键 Bug,发布 v0.1.0 版本,提升系统稳定性。

Ref: be99157 (prompt), eb02f5b (fix), ba77fc6 (Execute history)
Mid/Late 2024

高级 Agent 设计 & Dify 集成

设计了更高级的 OpsAgent 架构和多轮对话方案。接入 Dify 平台进行 Chatflow 调用和可观测性分析,优化性能。

Ref: d2d3c2c (OpsAgent design)
Late 2024 (v2.0.5)

部署优化 & 持续修复

增加了 K8s 部署配置,并修复了相关的部署问题和运行时 Bug,如 observation 处理等。

Ref: 619bd51 (k8s deploy), 222f2e2 (deploy fix), b9e2f3a (obs fix)
至今 (Today)

持续迭代中

项目持续活跃开发中,关注 Roadmap 中的新功能和优化点!

未来规划 (Roadmap)

我们致力于持续改进 OpsAgent,以下是近期规划的重点方向:

跨集群分析

增强对跨多个 Kubernetes 集群关联问题的诊断和分析能力。

动态集群管理

支持在运行时动态添加、移除和管理 K8s 集群连接。

记忆能力优化

改进长期对话记忆机制,减少上下文理解中的幻觉问题。

/

日志与监控集成

接入常见的日志(如 Loki, EFK)和监控(如 Prometheus)系统,提供更丰富的查询分析手段。

模型兼容性 & 性能

持续扩展支持的 LLM 模型,并不断优化系统响应速度和资源消耗。

MCP插件与扩展

探索插件化架构,允许社区贡献更多工具和能力。(远期)

准备好提升运维效率了吗?