编程 OpsAgent:Go 写的多云运维 multi-agent,靠四条链路压 MTTR

2026-09-12 09:13:43

OpsAgent:用 Claude Agent SDK 做多云故障根因分析

项目地址:https://github.com/Havens-blog/OpsAgent

项目是什么

OpsAgent 是一个面向多云环境的运维智能体系统,用 AI 自动完成故障根因分析(RCA)、告警响应和变更关联分析,帮 SRE 团队快速定位和解决生产问题。

生产故障发生时,证据往往散落在各处:日志服务(SLS、ELK)、监控指标(Prometheus、CloudWatch)、链路追踪(ARMS、Jaeger)、变更记录(CI/CD、K8s Events)以及运维知识库(Runbook、Wiki)。传统工具要求人工跨平台查询、关联、分析,MTTR(平均恢复时间)往往超过 1 小时。

OpsAgent 用四种方式缩短 MTTR:

  • 告警驱动:自动响应 Prometheus Alertmanager、钉钉、企业微信告警
  • 多源关联:把日志、指标、Trace、拓扑、变更事件做时序对齐
  • 智能推理:基于 LLM 生成假设并给出置信度评分
  • 安全防护:通过执行分层与审批机制控制副作用

核心功能

根因分析引擎(RCA)

  • 假设生成:基于异常数据生成可能的根因假设
  • 关联分析:跨日志、指标、Trace 做时序对齐与趋势相关性分析
  • 拓扑感知:基于服务依赖图做上 / 下游传播分析
  • 变更关联:自动关联 CI/CD 部署、配置变更、证书过期等变更事件
  • 置信度评分:按时间窗口 50%、拓扑 30%、周期性 10%、人工 Hint 10% 多维加权

数据源集成

  • 日志:阿里云 SLS、Elasticsearch
  • 指标:Prometheus、阿里云 CloudWatch
  • 链路:阿里云 ARMS、Jaeger
  • 变更:Kubernetes Events、GitLab CI
  • 拓扑:阿里云 ARMS Service Graph

安全防护

执行分 ReadOnly、ReadValidate、WriteExecute 三级权限;高风险操作需要人工确认;白名单限制可执行命令,控制副作用。

告警接入

支持 Prometheus Alertmanager Webhook、钉钉机器人回调、企业微信应用推送以及通用 HTTP Webhook。

技术栈

核心语言为 Go 1.24+,推理层基于 Claude Agent SDK(LLM Provider);可观测与数据侧对接 Prometheus阿里云 SLS / ARMS / CloudWatchElasticsearchJaegerKubernetesGitLab CI;告警侧接入 钉钉企业微信;本地测试可用 Docker / docker-compose。

架构设计

整体是「告警 / 控制台触发 → 总控调度 → 根因分析 → 数据汇聚 → 安全护栏」的流水线:

  • Coordinator Agent 负责任务调度、证据汇总与结论输出,接收 Alert Gateway 的 Webhook 与 CLI / Web Console 的入口。
  • RCA Engine 内含 Hypothesis Generator、Correlation Analyzer、Timeline Analyzer、Confidence Scorer 四个子模块,并调用 LLM Provider(Claude) 做推理。
  • Data Sources Layer 统一封装 Logs、Metrics、Trace、Topology、Change 五类数据源。
  • Guardrails & Observability 全程包裹执行层,提供 Execution Tier、Approval、Audit Log。

Multi-Agent 协作下,Coordinator 总控分发,LogAnalyst 负责日志模式识别,Monitor 做指标异常检测,Inspector 负责变更事件关联与拓扑传播分析。

快速开始

前置要求:Go 1.24+,可选 Docker 用于本地测试。

git clone https://github.com/Havens-blog/OpsAgent.git
cd OpsAgent
make install
cp config/datasources.yaml.example config/datasources.yaml
# 编辑 config/datasources.yaml 填入你的数据源凭证
make run

也支持容器化部署:docker-compose up -d

适用场景

  • SRE / 运维团队做告警自动响应与故障根因定位
  • 多云 / 混合云环境下统一可观测与跨源根因分析
  • 需要把变更事件与故障时间窗关联、对高风险操作做审批约束的团队
  • 已建设 Prometheus / SLS / ARMS 等数据源、希望叠加 AI 推理能力的组织
复制全文 生成海报 Go 运维 AI Agent SRE 多云

推荐文章

程序员茄子在线接单