运维这行当,这几年被“AI”这个词反复轰炸。从最初的“监控报警”,到前两年的“AIOps”(智能运维),再到最近开始频繁出现在各种技术大会和招聘 JD 里的“Agentic Operations”(智能体运维),概念迭代的速度比生产环境事故恢复的速度还快。我在一家中大型互联网公司摸爬滚打了十多年,从物理机时代一直干到容器化、云原生时代,老实说,最初看到“Agentic Operations”这个词,第一反应是:这又是哪个咨询公司造出来的新包装?
但当我真的把最近半年做的几个项目复盘了一遍,又翻了不少内部落地方案后,开始意识到,这不单纯是炒作。AIOps 和 Agentic Operations 之间,确实存在一条清晰的、从“被动分析”到“主动执行”的进化线。这篇文章不聊虚的,就结合我这几年带团队做监控告警、故障止损、变更管控的实战经验,把这两个概念掰开揉碎了讲清楚,顺便给准备入局的朋友一些可以直接参考的架构思路和避坑指南。
不管你是刚接触智能运维的初级工程师,还是正在推动团队做运维智能化改造的技术负责人,这篇文章都能帮你少走一些弯路。
1. AIOps 解决过的问题,和它根本没解决的问题
要理解“Agentic Operations”,就必须先搞清楚“AIOps”到底做了什么,以及它做不了什么。不把这个地基打牢,后面的楼盖得越高,摔得越惨。
1.1 AIOps 的核心贡献:让“找问题”变得不那么费人
AIOps(Artificial Intelligence for IT Operations)这个概念提出来的时候,目标是很明确的:用机器学习、大数据分析的手段,处理传统运维工具搞不定的海量数据,辅助人类做决策。在实际落地中,它确实解决了不少实际问题。
- 异常检测的智能化:以前我们监控 CPU、内存、流量,用的是静态阈值。流量稍微抖动一下就报警,业务高峰期的正常波动又经常漏报。后来引入了基于时序数据的动态基线检测,比如利用 Prophet、时序分解或者一些无监督学习算法,系统能自动学习业务周期规律,识别真正的“异常突刺”而不是“正常起伏”。这个能力的价值很直接:某电商平台大促期间,流量翻了十倍,静态阈值早就被打穿,但基线检测能稳如泰山,知道这是“预期的忙”,只在真正出现 RT(响应时间)飙升、错误率异常时才告警。
- 告警压缩和收敛:这个功能我觉得是 AIOps 最早见效、也最“普惠”的能力。以前一次核心数据库抖动,可能会触发上游几十个微服务的级联告警,工程师的手机能响成热线。通过相关性分析、聚类算法,把几百条告警聚合成一条“根因告警”,并附带关联的告警列表,这直接拯救了大家的睡眠质量。
- 初步的根因定位尝试:通过分析调用链、指标、日志的关联关系,AIOps 系统可以给出“疑似根因”的排序。比如定位到某个数据库主节点的慢查询指标异常、某台服务器的磁盘使用率突增等。它能缩小排查范围,但离真正“解决问题”还差得很远。
1.2 那些年我们被 AIOps “坑”过的痛点
即便上述能力听起来很美好,但在真实的生产环境里,我见过太多 AIOps 项目从“万众瞩目”走向“无人问津”。问题出在哪?出在它本质上是一套“辅助分析工具”,而不是一个“问题解决者”。
- 根因分析,往往只到“怀疑”这一步。系统说“怀疑是磁盘 IO 满了”,然后呢?工程师还是得自己登录服务器,敲
df -h、iostat,看是哪个进程在疯狂写日志,然后再决定是清理空间、扩容还是回滚代码。AIOps 把“从 10 万个嫌疑犯里找出 10 个”的效率提升了,但“从 10 个里揪出真凶并绳之以法”的活儿,还是得人肉干。 - 告警疲劳只是缓解,没有根治。因为系统只负责“分析”,它无法执行“止血”操作。所以,很多团队为了稳妥,依然会保留大量告警,结果就是模型推荐的“低级别告警”没人看,偶尔漏掉一个变成了“高级别”,信任危机就爆发了。说白了,大家还是不敢把决策权完全交给一个“只动嘴不动手”的参谋。
- 执行环节高度依赖人工。这是 AIOps 最致命的短板。发现故障、定位到疑似原因后,接下来的操作——重启服务、扩容 Pod、回滚版本、修改防火墙策略——每一个动作都涉及高危指令。AIOps 平台普遍不敢碰这些操作,也不具备操作这些系统的能力。它生成的“处置建议”是静态文本,无法转化为对 Kubernetes、监控平台、发布系统的实际调用。整个闭环是断的。
2. Agentic Operations:从“分析大脑”到“数字运维员工”
理解了 AIOps 的局限,就能明白为什么业内开始吹捧“Agentic Operations”(也有叫 Agentic AIOps 的)。它的核心变化,是把“分析工具”升级成了“具有行动能力的智能体”。
2.1 重新定义:Agent 到底是个什么东西
这里说的 Agent(智能体),不是传统意义上跑在服务器上的守护进程。它是一个以大语言模型(LLM)为“大脑”,具备感知(Perception)、规划(Planning)、工具调用(Tool Use)、行动(Action)和反思(Reflection)能力的软件实体。
你可以把它想象成一个刚入职、学习能力极强但需要严格监管的实习生。你给它分配一个目标(比如“处理告警 A”),它自己会去“看”(通过 API 查询监控数据),自己“想”(分析可能的原因),自己“动手”(调用自动化平台执行重启或扩容),然后自己“检查”(看看重启后指标是否恢复)。如果没搞定,它会反思,换个思路再来。
这跟传统的“自动化脚本”有着本质区别。自动化脚本是“死”的,if-then-else 写死了,场景一变就失效;Agent 是“活”的,它能根据当前实时的系统状态,灵活调整自己的下一步操作。这也就是为什么很多人把 Agentic Operations 看作是 AI 运维的“iPhone 时刻”。
2.2 核心差异:从“辅助决策”到“闭环执行”
下表是我整理的两者核心差异,对照着看会更清晰:
| 对比维度 | AIOps(智能运维) | Agentic Operations(智能体运维) |
|---|---|---|
| 角色定位 | 高级参谋/分析工具 | 一线运维工程师/执行者 |
| 核心能力 | 检测、分析、预测、推荐 | 感知、规划、执行、验证、复盘 |
| 交互模式 | 输出报表、告警、建议,等待人类决策 | 直接调用工具链执行操作,并反馈结果 |
| 知识使用 | 基于规则和模型,知识库更新滞后 | 通过 RAG 调用实时知识库、CMDB,动态决策 |
| 容错机制 | 告警可能误报,分析可能不准,人需要二次确认 | 通过沙箱环境、审批流、灰度执行来控制风险 |
| 处理终点 | 输出“根因分析报告” | 完成“故障恢复动作”并自动验证 |
在 AIOps 时代,我们的工作流是:监控告警 → 系统分析 → 人工确认 → 人工执行 → 人工验证。
到了 Agentic Operations 时代,工作流演进为:监控告警 → Agent 感知 → Agent 规划 → 工具执行 → 自动验证 → 人工抽检/介入灰度。
注意,人工没有完全被移除,而是从“操作工”变成了“管理者/审批者”。我们不再亲自去敲那些危险的命令,但我们会牢牢控制着 Agent 可以在什么范围、什么时间、执行什么级别的操作。
2.3 为什么是现在?技术底座终于成熟了
这个概念其实前几年也有人提过,但根本做不出来。为什么现在开始成为可能?三个技术条件的成熟密不可分:
- 大语言模型的推理能力:现在的 LLM 不仅能理解自然语言,还能进行多步推理(Chain-of-Thought),并且具备了调用外部工具的“Function Calling / Tool Use”能力。这让 Agent 能够“听懂”一个模糊的目标(如“搞定这个告警”),并将其拆解为一系列可执行的 API 调用。
- 平台 API 的完备性:无论是 Kubernetes、监控系统(Prometheus)、日志平台,还是内部的变更系统、CMDB(配置管理数据库),都提供了相对完善的 API 接口。没有这些“手脚”,Agent 的大脑再聪明也动不了。
- RAG 与向量数据库:企业内部的海量运维文档、故障复盘报告、系统架构知识,可以通过 RAG(检索增强生成)技术注入到 Agent 的知识库里,让它“懂行规”,而不是一个只会写代码但不懂业务的外行。
3. 一张图看懂 Agentic Operations 的参考架构
讲完了理论,直接上干货。这是我最近在推的一个内部平台的核心架构分层,不一定完全适合你的团队,但整体的思路是通用的,可以作为蓝本参考。
3.1 五层架构:感知、决策、执行、记忆、安全
在我看来,一个能落地的 Agentic Operations 平台,至少需要包含以下五个核心部分:
- 接入与感知层:这是 Agent 的“眼睛和耳朵”。统一接入各类遥测数据(Metrics、Logs、Traces)和事件(告警、变更事件、发布事件)。不仅要有数据,还要有标准的语义。没有这层,Agent 就是瞎子。
- 决策与规划层:这是 Agent 的“大脑”。包含 LLM 推理引擎、任务规划器(Planner)、工具选择器(Router)。它的职责是把一个复杂目标拆解成一步步可执行的子任务。
- 执行与工具层:这是 Agent 的“手脚”。包含一个标准化工具库(Tool Registry),将内部系统(监控查询 API、K8s API、发布系统 API、CMDB API、甚至操作 RPA 脚本)封装成 Agent 可以直接调用的 Tool。
- 记忆与知识层:这是 Agent 的“长期记忆”。包含向量知识库(历史故障文档、架构说明)、短期工作记忆(当前处理的任务上下文)和经验沉淀库(每次处理完应该把步骤和结果存下来,做增量学习)。
- 安全与治理层:这是 Agent 的“紧箍咒”。包含权限管控(RBAC)、敏感操作审批、操作审计、沙箱隔离、有界探索(限制 Agent 能访问的主机和执行命令的范围)。
3.2 关键细节:工具注册与标准化
执行层是容易踩坑的重灾区。很多团队做 POC(概念验证)时,都是让 Agent 直接去调 Linux 命令或者 K8s API,这非常危险。我的建议是,自建内部“工具注册中心”。
简单来说,每个工具都要定义清晰的 Schema,包括:
- 工具名称:如
query_pod_status、restart_deployment。 - 功能描述:这段描述是写给 LLM 看的,务必要详细说明这个工具是干什么的、什么场景用、使用后有什么后果。描述不清晰,LLM 就很容易用错工具。比如,
restart_deployment的描述可以写:“当检测到某应用实例状态异常且无法通过日志定位时,可以执行滚动重启操作。注意:这会短暂影响该应用的可用性,必须在低峰期且经过审批后使用。” - 参数定义:精确到每个参数的类型、取值范围、是否必填。
- 权限等级:L1 只读、L2 低风险操作、L3 高危操作(需强制人工审批)。
我在项目中就吃过亏。第一次接入时,我给 Agent 开放了直接执行 RedisFLUSHALL命令的工具(为了清缓存),结果有一次因为知识库检索出错,Agent 在做磁盘清理时差点错误地调用了这个工具去清缓存库。好在权限控制拦住了,否则就是 P0 事故。自那以后,所有的写操作必须走工具网关,并且高危操作在工具的代码层就写死了“必须经过人工审批流程”。
4. 从 AIOps 平滑过渡:四阶段成熟度模型
别想着一步到位。如果你现在还在用传统的 AIOps,甚至还在用最原始的监控告警,想直接跨到“全自动智能体运维”,90% 的概率会翻车。我们内部的路线图,是分四个阶段走的:
4.1 L0/L1 阶段:基础工具与辅助分析(告警聚合)
- 现状:传统监控,告警分散,人工看图。
- 目标:完成“告警中心”建设,引入事件管理流程,确保告警能够统一触达。
- Agent 能力:无。这一阶段主要是建设数据底座和数据标准化,包括统一 Metrics、Logs、Traces 的标签规范、清洗数据格式、将分散的监控系统数据接入统一平台。
4.2 L2 阶段:局部自主(单 Agent + 人工闭环)
- 现状:告警已经完成聚合,但仍然需要人工 runbook(操作手册)去处理。
- 目标:引入“诊断 Agent”。这一步比较关键,可以考虑为特定场景(比如数据库慢查询、应用异常、磁盘告警)分别训练或配置一个独立的 Agent。它自动完成“感知告警 → 关联分析 → 根因假设 → 输出诊断结论”。
- Agent 能力:感知 + 规划 + 执行部分只读查询。
- 执行方式:Agent 生成完整的处置建议(包含调用哪些指令的伪代码),但执行动作由人工确认后触发。它不直接操作,但已经可以让你从“看数据”中解脱出来。
规划操作:
- 完成 CMDB 与可观测性平台的数据打通。
- 挑选一个高频且低风险的场景(如磁盘空间不足),开发专用的诊断 Agent。
- 建立一个包含 100 份以上历史故障报告的 RAG 知识库。
4.3 L3 阶段:条件自主(Narrow Autonomy)
- 现状:L2 阶段的诊断已经足够稳定。
- 目标:赋予 Agent 在特定条件下执行“低风险、可逆”操作的能力。比如,Agent 检测到某应用容器频繁重启,它可以自动执行“滚动重启”操作,前提是流量低于阈值且没有大促;或者自动清理临时目录下的垃圾日志,但限定路径。
- Agent 能力:感知 + 规划 + 执行(受限)+ 验证。
- 执行方式:对于 L2 权限的操作(如查询、低风险变更),Agent 自动执行;对于 L3 权限的操作(如重启服务、扩容),Agent 发起工单,由运维负责人通过一键审批。
4.4 L4 阶段:目标驱动(Multi-Agent 协作)
- 现状:已经处理过大量重复和半重复的故障。
- 目标:引入“值班长 Agent”(Orchestrator)和“专项 Agent”(Worker)。值班长 Agent 接到任何告警后,负责全权调度:拆分任务、指定专项 Agent、收集结果、根据进度决策是否升级或回滚。此时,大部分标准故障已能实现端到端的自动发现、定位、恢复和验证。
- 风险控制:必须建立“熔断机制”。比如,若 Agent 连续 3 次执行修复操作后,核心指标仍未恢复,系统将自动停止所有后续操作,派发 P0 告警给人工介入。
5. 三个落地场景的实操拆解
理论框架再完美,不如一个“Hello World”来得实在。分享三个我认为最适合作为切入点的实战场景,以及具体的执行/处理链路。
5.1 场景一:告警风暴处理与根因初判
- 痛点:某个核心应用报错,瞬间导致上下游 100 条告警,AIOps 虽然做了聚合,但群里的告警机器人依然要被刷屏。
- Agent 实操链路:
- 事件感知:聚合告警平台将 100 条原始告警交给“告警处理 Agent”。
- 智能过滤与聚类:Agent 通过工具调用,查询最近的发布事件工单、网络变更工单,并在知识库中检索“历史同类告警的复盘文档”。
- 生成局势报告:Agent 不直接跳转到“抄家伙上”,而是先输出一份简明报告:“检测到 15:30 核心交易链路大面积异常,已过滤无效上游告警 80 条。初步判断与刚发布的订单服务 v2.3.1 版本有关。当前读写 RT 上升 200%,数据库连接数接近极限。建议立即回滚订单服务或扩容数据库连接池。”
- 触发后续动作:该报告作为“任务卡”自动派发给“变更执行 Agent”,同时 @ 相关负责人在线审批。
5.2 场景二:变更风控与“自动驾驶”发布
- 痛点:每周的版本发布,都是运维和开发最紧张的时刻。传统 AIOps 只能看发布后的指标变化,无法控制发布过程。
- Agent 实操链路:
- 发布前检查:发布 Agent 在发布窗口开始前自动执行前置校验。检查集群剩余容量、该服务依赖的数据库当前负载、依赖的下游服务是否处于稳定状态(是否有未完成的变更)。不满足条件,自动终止发布流程。
- 灰度发布与智能流量切换:Agent 控制发布系统按 1% → 5% → 20% 的流量比例进行灰度。每一步都会观察核心指标(错误率、RT、CPU、线程数)。
- 自动回滚决策:如果在任意阶段检测到“错误率超过基线 2 倍”或“RT 超过 500ms”,Agent 不等待人工确认(L3 权限已预授权),直接调用发布系统的“回滚接口”,将服务回滚到上一个稳定版本。
- 效果:以前一次发布需要两三个工程师盯着屏幕盯半小时,现在 Agent 全包了,工程师只需要在最终全量前做一次人工确认。
5.3 场景三:数据库慢查询自动优化
- 痛点:SQL 慢查询导致数据库 CPU 飙升,需要 DBA 手工分析慢日志、改 SQL。
- Agent 实操链路:
- 问题感知:数据库指标 Agent 发现 CPU 使用率异常,通过工具查询慢查询日志,获取 Top 5 的 SQL 样本。
- 根因分析:Agent 将 SQL 和执行计划(EXPLAIN)发给 LLM。LLM 根据知识库中的索引规范和表结构信息,生成分析结论:“此 SQL 因对 status 字段未建索引导致全表扫描,建议添加复合索引 idx_user_status。”
- 执行 DDL(数据定义语言):经过审批后,Agent 连接自动化 DDL 平台提交索引变更工单。变更完成后,Agent 再次查询执行计划,发现扫描行数从千万级降到百级,确认 CPU 指标回落。
- 沉淀经验:自动将“添加索引解决慢查询”的过程生成一份简明摘要,存回向量知识库。
6. 落地过程中必须面对的四个“拦路虎”
到这里,可能你也发现了,Agentic Operations 的前景非常诱人,但路上的坑也不少。如果你正准备动手,一定要提前准备好应对下面这“四大拦路虎”。
6.1 幻觉问题:LLM 一本正经地胡说八道怎么办
这是所有落地方案里最让人揪心的一点。LLM 可能会自信地告诉你“已执行 SQL 变更”,实际上它调用了错误的工具,或者知识库里根本没有这个表的 DDL 权限。
- 避坑建议1(工具侧):强制“指令直通与解析校验”。Agent 调用的不是自然语言,而是结构化的工具调用指令(Function Call)。在执行前,平台侧必须有“参数校验层”,严禁 Agent 越过该层直接拼接命令。
- 避坑建议2(操作侧):遵循“最小惊讶原则”。Agent 的所有操作必须落在沙箱或测试环境先跑通。对于生产环境的操作,初期必须强制执行“影子模式”,即 Agent 只生成“将要执行的命令”,但不真正执行,由人工在界面上点击“模拟运行”看效果。
- 避坑建议3(结果验证):Agent 必须被强制要求“验证效果”。声明“成功了”不算数,必须附上验证证据,比如成功重启后 Pod 的状态截图、查询到的指标数据。如果验证失败,Agent 要能自动撤销或触发回滚。
6.2 数据孤岛与 API 覆盖率:大脑发达,手脚残缺
如果你的监控数据、变更记录、财务成本数据分散在五个不同的系统里,且大部分没有 API,只有笨重的 UI 界面,Agent 的能力就无从施展。
- 解决思路:Agentic Operations 的建设周期,通常是和底层 IT 系统的 API 完善周期同步的。如果暂时没有 API,可以退而求其次,封装一个“UI 操作代理”(抓取页面数据、模拟点击),但维护成本高,我建议还是优先推进核心系统 API 化。在选型初期,就一定要把“是否提供完整 API”作为技术选型的一票否决项。
6.3 安全边界与权限管控:如何防止“内鬼”和“误伤”
Agent 拥有比人类工程师更快的操作速度,这既是优势也是风险。如果没有严格的权限管控,一个误操作可能在几秒内摧毁整个集群。
- 我的组合拳做法:
- 强身份体系:每个 Agent 拥有独立的“机器人身份”(不同于真人账号),遵循最小权限原则。Agent A 只能读监控,Agent B 只能操作发布系统,严格隔离。
- 动态权限:高危操作(L3)需要动态申请“临时权限”,且有 TTL(生存时间)。权限过期自动回收,避免通用权限长期有效带来的风险。
- 操作审计:Agent 的每一次工具调用都必须有不可篡改的审计日志。我要求团队做到“四个 W”:Who(哪个 Agent)、What(调了哪个工具)、When(什么时间)、Where(针对哪台主机/集群)。
6.4 组织与流程阻力:信任是怎么崩塌的
技术上最难的是最后一公里:让团队的兄弟相信 Agent 的判断。经常发生的情况是,Agent 连续正确了 99 次,大家慢慢开始信任它,结果第 100 次它判断失误,把某个读写库的连接池调小了,引发了轻微故障。这会让团队瞬间退回“全人工操作”。
- 破局建议:
- 从影响面最小的场景切入:优先处理那些“处理错了也没关系”的场景,比如清理临时文件、变更 CMDB 标签,不要一上来就搞“数据库自动切换”。
- 建立“人机共责”机制:设置 Agent 的“工作饱和率”,初期以“人审核为主”,Agent 可以提交建议报告,由人确认执行。当 Agent 的准确率和历史可靠度稳定在极高水位后,再逐步放宽执行权限,并设置“自动熔断线”。
- 定期复盘机制:像对待新人工程师一样对待 Agent,每周拉取 Agent 的“执行记录”,挑出执行失败的案例,分析是模型问题、工具问题还是知识库缺失,并针对性优化。
写在最后:一点个人坚持的观点
操作过、踩过坑之后,我个人的体会是:Agentic Operations 不是来抢运维饭碗的,它是在把运维从“重复劳动”和“高压救火”中解放出来。但这个过程一定是循序渐进的,它考验的不只是我们的技术能力,更是团队对“控制权”的理解。
最后再分享一个小技巧:在搭建 Agent 的 Prompt 或系统卡片时,一定要把“限制性描述”写得比“能力描述”更详细。告诉它“能做什么”,更要告诉它“在什么条件下绝对不能做什么”。比如显式写入:“如果检测到网络分区或大规模丢包,严禁执行任何滚动重启操作。”这比任何复杂的数学概率模型都好使,AI 再强,也要时刻记得给它系上安全绳。先从一个诊断 Agent 跑起来,从一个低风险的自动处置场景跑起来,一点点积累信任,这才是正路。