云排障智能体实践:用问诊式诊断解决云服务器高频故障

举报
yd_228326260 发表于 2026/10/23 12:05:51 2026/10/23
【摘要】 把云服务器排障经验结构化为问诊式智能体:纯原生 HTML/CSS/JS、零依赖可离线,覆盖 5 类症状 28 个根因结论;核心“磁盘空间不足”诊断模块由码道 CodeArts 在华为云 AI 开发者空间生成首版,经人工审查修正为 v1.1,Node 校验全部通过。

一、缘起:排障经验是最难复制的资产

云服务器的故障排障,是一件非常“吃经验”的事情。安全组里明明已经放行了端口,外网却依然访问不了;磁盘毫无征兆地突然写满;SSH 突然连不上;CPU 毫无预兆地飙高;关键进程莫名其妙地异常退出。对经验丰富的运维同学来说,这些大多是“查两三个地方就能定位”的常规操作;但对新手来说,面对一片空白的终端,第一反应往往是:我到底应该先查什么?

这种经验断层,正是很多小故障演变成大事故的原因。于是我开始思考:能不能把这些排障经验结构化、产品化,让新手也能像老手一样一步步问诊、一步步定位?这就是这个“云排障智能体”的由来。

二、思路:把排障经验结构化为智能体的四阶段推理

我的做法,是把一次完整的排障过程抽象为智能体的四阶段推理链:

意图理解 → 信息收集 → 根因分析 → 处置方案

具体交互上,用户先选择遇到的症状类型;智能体随后像医生问诊一样逐题提问,每一题都给出要执行的检查命令(先让你跑一条命令,再根据输出决定下一步问什么);走完问诊流程后,智能体给出根因结论,并附上可直接执行的修复方案。整个过程不需要用户事先知道“该查什么”,跟着问题走就行。

三、实现:纯原生、零依赖、可离线打开

在实现上,我刻意选择了最“轻”的技术路线:

  • 纯原生 HTML/CSS/JS,零依赖:不引入任何第三方库,单文件即可在浏览器中离线打开——在故障现场(可能连外网都没有的环境)也能用;
  • 覆盖 5 类症状、28 个根因结论:症状覆盖云服务器高频故障场景,每个结论都经过整理和归类;
  • 统一三段式结论:每个根因结论都包含三部分——根因说明、有序修复步骤、可一键复制的 Linux 命令。命令覆盖日常排障高频工具,如 ss -tlnp、systemctl status、ufw status、df -h、du、lsof +L1、journalctl --disk-usage 等,复制粘贴即可执行。

四、码道实践:AI 生成首版 + 人工审查修正

在开发过程中,我把核心的“磁盘空间不足”诊断模块放到了华为云 AI 开发者空间中,用码道 CodeArts 生成了首版代码,共 221 行。AI 生成的速度确实快,但质量仍需人工把关——我在审查时发现了两个问题:

  1. systemd journal 被误归入了“日志类”结论,分类逻辑有误;
  2. 诊断树中有一个问题节点存在回边,破坏了纯树形结构。

带着这两个问题继续追问修正后,得到了 v1.1 版本:242 行,新增了“磁盘配额或预留空间”结论。用 Node 脚本校验:节点数、引用完整性、纯树形结构三项全部通过。这次实践让我更确信:AI 负责“生成初稿提速”,人负责“审查纠偏兜底”,才是当下最靠谱的人机协作模式。

五、进展与规划

目前,该作品已提交 2026 华为开发者大赛·智能体创新赛-中部赛区。后续规划有两个方向:一是接入大模型 API,实现自然语言症状理解,让用户可以直接用一句话描述故障,而不用先选症状分类;二是对接云 API,实现自动巡检与证据采集,把“问诊”升级为“体检”,在故障发生前就发现隐患。

如果你也在为云服务器排障发愁,欢迎交流:好的排障工具不应该是命令的堆砌,而应该是一套可被传承的经验结构。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。