大专大一,手搓 AIOps 底座:当大模型幻觉时,我的系统在 98.9ms 抓住了宕机的 Redis

大专大一,手搓 AIOps 底座:当大模型幻觉时,我的系统在 98.9ms 抓住了宕机的 Redis

最近,我开源了一个基于本地大模型(Ollama)的 AIOps 运维 Agent,叫 moray-aio。

很多人问我:"大模型全是幻觉,动不动就瞎敲 kill,你敢让它碰运维?" 说实话,我一开始也不敢。作为一个大一学生,我甚至不敢承认它能"用于生产"。

但经过几天的通宵迭代,经历了真实的混沌工程演练 和红蓝对抗 ,今天我可以拍着胸脯说:我已经把大模型的双手彻底铐住了。

👉 GitHub 开源地址 :https://github.com/aliangmo2026/moray-aio 👉 PyPI 一键安装 :pip install moray-aio


🚨 一、 大模型落地运维的致命痛点

市面上做 AI Agent 的项目很多,但大多是在套壳。一旦丢进真实的系统环境,就会出现三个致命问题:

  1. 幻觉越权 :大模型被恶意 Prompt 注入,试图执行 os.system('rm -rf /')。
  2. "偷懒"误判:拿到报错日志后,不加验证直接给出错误的结论。
  3. 进程卡死 :大模型生成了死循环代码,直接把宿主机 CPU 占满(比如经典的 GIL 炸弹 10**10**10)。

为了解决这些问题,我在 moray-aio 里写下了极度硬核的安全防线。


🛡️ 二、 四层纵深:把 AI 关进 AST 语法树的笼子

别人用正则表达式防漏洞,我直接上了AST(抽象语法树)静态审查。

当大模型试图生成代码执行时,它必须穿过我的四道闸门:

  1. AST 节点白名单 :禁止一切危险的节点(如 Import、Attribute)。
  2. 黑名单过滤 :杜绝 eval、exec、os 等高危字面量,连利用生成器 gi_frame 帧逃逸的路径都被我封死了。
  3. 受限命名空间 :剥离了所有内置的 __builtins__。
  4. 多进程物理击杀 :如果大模型写了 sum(itertools.count()) 这种能锁死 GIL 的炸弹,传统的线程超时根本没用。我引入了 multiprocessing 进程池,超过 2 秒,操作系统直接 terminate 物理超度这个进程。

为了证明它真的安全,我写了个 Fuzzer 脚本,包含 198 种极其刁钻的恶意 Payload(别名洗白、帧阶梯逃逸、DNS 外联探测等)狂轰乱炸。

结果:0 逃逸,0 误报。拦截率 100%。


⚔️ 三、 真实 Chaos Engineering:当大模型"偷懒"时

光有安全还不够,它得能在真实故障中救命。

我模拟了一次真实的 Redis 宕机:在本地启动一个 Redis,突然在终端 kill 掉它,并注入一条 Connection refused 的错误日志。

高光时刻来了:

  1. 日志注入后 98.9 毫秒,系统自动触发。
  2. 但是!qwen2.5:7b 模型在被前文日志干扰后,给出了一个保守的模糊结论。
  3. Critic Agent(双模型互搏) 立刻跳出来反驳:"你的结论缺乏直接证据,逻辑跳跃!"
  4. 启发式兜底引擎 强行接管,派出 port_check 和 process_list 探针,一秒拿到铁证:端口不通、进程不存在。

系统最终输出了极其精准的根因分析,并通过 Webhook 推送了警报。

故障注入时间线

{"fake_redis_pid": 460, "port_6379_before_kill": true, "port_6379_after_kill": false}

{"t_kill_utc": "2026-10-26T12:39:47.568", "t_append_utc": "2026-10-26T12:39:49.834"}

规则触发延迟:

事件 时刻 (UTC) 延迟
错误行注入 12:39:49.834 ---
critical_keywords 规则开火 12:39:49.933 98.9 ms ✅

探针真实返回(保底机制拦截了大模型的偷懒)

port_check → {"host":"127.0.0.1","port":6379,"open":false,"latency_ms":null} ✅

process_list → {"count":0,"processes":[],"source":"psutil"} ✅

yaml 复制代码
---

### 🌐 四、 拥抱 MCP:从封闭走向生态

除了安全与实战,我还给它接入了 **MCP(Model Context Protocol)**。
这意味着,不仅是我的程序能用它,包括 Cursor、Claude Desktop 等所有支持 MCP 的工具,都可以瞬间调用我的安全探针。

顺便一提,项目开源后,意外收到了海外 AI Agent 交易平台 Agensi.io 的入驻邀请。看来"绝对安全的本地只读底座",确实是全球开发者的共同刚需。

---

### 🎓 写在最后:我是大专大一,这是我的敲门砖

我是MoRay,一名大专大一的计算机学生。没有大厂背书,也没有实验室资源。

这套底座是我一行一行敲出来、一个 Bug 一个 Bug 填出来的。我知道它可能还不是完美的商业套件,但它具备了极高的工程素养和安全底座。

**目前代码已全量开源(187 个测试全绿,支持 pip 一键安装):**
GitHub:`https://github.com/aliangmo2026/moray-aio`

如果各位前辈觉得这个架构有意思,**求一个免费的 Star ⭐️**。
同时,我也在寻找大厂的实习/内推机会。如果你们团队正在头疼大模型落地时的安全和管控,我愿意带着这套沙箱架构加入你们,一起去更大的战场打磨它!
相关推荐
梯度下降者2 天前
二、自动化运维架构师的三大核心能力
ci/cd·架构师·自动化运维·iac·平台工程
迪康软件zz3 天前
从 PHP 高危漏洞看纵深防御:资产盘点、补丁管理与端点防护实践
运维·安全·自动化运维
智能运维指南3 天前
企业 IT 管理软件如何选型?先理清监控、服务管理、配置与自动化能力
运维·自动化·自动化运维·嘉为蓝鲸
垚垚学技术_聚焦云原生3 天前
Ansible 变量体系详解:主机变量、组变量、全局变量优先级实战
ansible·自动化运维·devops·变量优先级
智能运维指南4 天前
企业 IT 运维自动化平台怎么选?从场景匹配到 POC 验证的完整评估框架
运维·自动化·自动化运维·嘉为蓝鲸
喵个咪5 天前
GoWind Ops 拆解:不引入分布式锁的多副本协调
后端·go·自动化运维
喵个咪5 天前
GoWind Ops 深度拆解:纯出站 Agent + MQTT 信令,把「管机器、跑项目、发脚本、构建分发」做扎实
后端·go·自动化运维
考虑考虑6 天前
nginx路由重写
运维·后端·自动化运维
费曼学习法8 天前
把「发送成功」当「送达」?我排查 IM 长消息被静默吞掉的完整过程
python·ai编程·自动化运维