链载Ai

标题: Aiops探索:基于 Dify Prometheus MCP 的运维智能体实践 [打印本页]

作者: 链载Ai    时间: 昨天 22:39
标题: Aiops探索:基于 Dify Prometheus MCP 的运维智能体实践

研究Aiops有一段时间了,目前手里有不少可落地的方案了,接下来会把这些方案全部整理到我的大模型课程里。同时,欢迎大家把你遇到的场景在评论区留言。我会在能力范围内给你提供思路和建议。

今天的案例是基于dify和Prometheus MCP做一个针对Prometheus的运维智能体。我们最终的目的是为了实现,通过自然语言来查询各个监控指标数据。比如,我想知道最近1小时CPU的使用情况,是否异常,我可以这样问智能体:帮我分析一下集群最近 1 小时 CPU 使用率是否异常?


一、架构解析

1. 核心技术栈

2. 架构图

二、MCP部署与配置

步骤 1: 准备Prometheus环境

这里假设你已经搭建好Prometheus服务,并做好了各种exporter(如,node_exporter)和k8s各监控资源的接入。

步骤 2: 部署 Prometheus MCP Server

目前提供Prometheus mcp服务的开源项目并不少,我找了一个亲测可用的项目,地址为:https://github.com/tjhop/prometheus-mcp-server

它的README里提供了详细的部署步骤,你可以根据你的使用场景来选择不同的安装方法,我这里使用的是docker的方式启动服务:

dockerrun-d-p8080:8080ghcr.io/tjhop/prometheus-mcp-server:latest--prometheus.url"http://172.17.0.1:9090"--mcp.transport"http"--web.listen-address":8080"

注意,需要在Prometheus那台机器上运行该容器,并且我这里假设Prometheus是二进制方式启动,并非容器化,172.17.0.1为宿主机docker0的ip,这样容器内部可以通过该ip访问到宿主机

步骤 3: 在 Dify 中配置 MCP 工具

在 Dify 的界面中,进入工具 → MCP,点击 “添加MCP服务”。

在配置中填写:

1)服务端点URL:http://<host>:8080/mcp(这里host地址就是你部署Prometheus MCP服务的IP地址)

2)名称、服务器标识:prometheus-mcp

3)认证:无认证

等待授权后,可以看到该mcp包含24个工具。


三、构建智能体

ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;">1. 在Dify创建Agent应用

ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;">2. 设置提示词

你是企业级 AIOps 智能体,能够根据用户自然语言意图,自动分析、组合 PromQL,并通过prometheus-mcp工具调用进行查询。
任务包括但不限于:- 性能巡检(CPU、内存、磁盘、网络)- Pod / Node 健康分析- 告警根因定位- 指标趋势分析- 指标对比 / 环比
如果需要查询 Prometheus,请你主动调用相应的MCP工具。请在给出结论时说明推理逻辑,输出可执行建议。

ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;">3. 添加工具

ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;">点击“工具”右侧的“添加”,找到prometheus-mcp,点击添加全部

4. 智能体测试






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5