摘要:某大型制造企业 IT 环境包含 80+ 物理服务器、1000+ 虚拟主机、400+ 套业务与硬件管理系统,长期面临故障发现滞后、非工作时段无人值守、资源人工调度、硬件设备监控盲区等问题。本文记录我们基于紫薯 AI OS 构建智能运维体系的完整过程:从"再买一套监控软件"的思路误区出发,给出以数字人分身(岗位智能体)为核心的替代方案,涵盖分身模型设计、业务梳理方法论、探测矩阵与频率分级、防误报机制、工具层实现、知识工程建设,以及资源估算、验收指标与真实踩坑记录。方案首期 13 周、投入 52 万上线 3 个分身,可供同规模企业参考。
关键词:AIOps;数字人分身;智能体;紫薯 AI OS;智能运维;RAG;CMDB;故障预测

一、问题背景
1.1 客户环境
| 物理服务器 | 80+ 台(支持 IPMI / iDRAC / iLO 带外管理) |
| 虚拟主机 | 1000+ 台(CPU / 内存 / 存储 / 千兆带宽已池化) |
| 业务与硬件管理系统 | 400+ 套(含已停用但需备查的系统) |
| 资源调度方式 | 人工调度 |
| 故障发现方式 | 以用户投诉倒逼为主 |
1.2 六类核心问题
经过现场调研,我们把问题抽象为六类:
1.3 为什么"再买一套监控软件"解决不了
这是最容易踩的坑。监控软件解决的是数据采集与可视化,而客户的真实痛点是无人 7×24 值守、看到了也无人第一时间处理、经验无法传承。
再上一块更大的大屏,只会让问题更醒目,不会让它消失。
根因判断:现有体系是"工具堆叠"而非"系统运营"。需要建立 采集 → 关联 → 预测 → 决策 → 执行 → 学习 的闭环,并把人的角色从"执行者"上移为"规则制定者与例外处理者"。
—
二、方案总览
2.1 设计思路的转变
| 交付物 | 功能模块清单 | 角色卡 + 知识包 + 工具集 + 工作流 |
| 工作量重心 | 代码开发 | 业务梳理与知识工程 |
| 客户参与 | 需求确认与验收 | 深度参与业务梳理 |
| 效果决定因素 | 功能覆盖度 | 知识质量与 SOP 完整度 |
| 扩展方式 | 新需求需开发排期 | 补知识即可,边际成本递减 |
2.2 紫薯 AI OS 分层架构
`
**一个关键设计原则**:工具层只提供**能力**,不承载**业务逻辑**。所有业务判断交给分身与知识库完成。
这样做的好处是后续新增场景只需补知识、排工作流,不必改代码——这是第二期起分身单价从 6 万/个降到 4 万/个出头的根本原因。
—

## 三、数字人分身模型设计
### 3.1 四件套模型
每个分身由四个部分构成:
```yaml
# 分身角色卡示例(巡检分身)
agent:
id: inspector-01
name: 巡检分身
role: 早班巡检员
duty: >
每日上班前完成全量系统与设备巡检,在员工到岗前输出风险报告,
让 IT 主管第一时间掌握当日运行状况
autonomy: full_auto # full_auto | semi_auto | advisory
fallback: 发现未识别的异常模式时转人工确认
triggers:
– type: cron
expr: "0 7 * * 1-5" # 工作日 7:00
– type: cron
expr: "0 7 * * 6,0"
template: weekend # 节假日使用差异化模板
tools:
– probe_executor # 探测执行器
– baseline_query # 基线查询
– cmdb_query # CMDB 查询
– case_search # 历史故障检索
– report_generator # 报告生成
– notifier # 消息推送
knowledge:
– sop/inspection/*.md
– rules/system_tier.yaml
– baseline/*.json
– archive/decommissioned.yaml # 停运备查清单
constraints:
max_execution_time: 40m
report_deadline: "08:00"
decommissioned_systems: update_only # 仅更新台账不告警
3.2 分身矩阵(八个岗位)
| 巡检分身 | 早班巡检员 | 每日全量巡检,出具风险报告 | 全自动 |
| 值守分身 | 值班调度员 | 告警降噪、定级、派单 | 全自动 |
| 诊断分身 | 故障分析师 | 根因定位,给出处置建议 | 建议型 |
| 处置分身 | 运维工程师 | 白名单内执行重启、清理 | 受控自动 |
| 设备分身 | 硬件资产管理员 | 台账、在线、保修、供应商派单 | 全自动 |
| 调度分身 | 资源规划师 | 容量预测,给出调度建议 | 建议型 |
| 运营分身 | IT 运营分析师 | 周报月报、健康分、SLA 考核 | 全自动 |
| 服务分身 | IT 服务台 | 员工问答、报障受理 | 全自动 |
首期只做前三个 + 设备分身中的三个(巡检、值守、设备)。处置与调度涉及生产系统变更,需单独做安全评审,放到第二期。
—
四、业务梳理方法论
这是整个项目最耗时也最关键的环节,直接决定分身效果上限。
4.1 四步法
第一步 岗位梳理(1周)→ 谁在什么时候做什么事
产出:《岗位与职责清单》《运维工作日历》
第二步 场景梳理(1周)→ 高频 × 耗时 × 易错 打分排序
产出:《场景清单与优先级矩阵》《场景-岗位映射表》
第三步 SOP 梳理(1周)→ 触发/判断/执行/边界/异常/升级
产出:《SOP 手册》《判断规则表》
第四步 知识沉淀(并行)→ 工单、案例、手册、台账入库
产出:《知识库清单》《知识入库记录》
4.2 场景优先级评估矩阵
| 发生频率 | 每天/每周/每月发生多少次 | 每天发生,或每次业务高峰必现 |
| 单次耗时 | 人工处理一次需要多久 | 超过 15 分钟,或需跨系统查证 |
| 出错代价 | 处理不当的后果 | 影响业务连续性,或依赖个人经验 |
| 规则明确度 | 能否被清晰描述成规则 | 规则清晰、可枚举 |
踩坑经验:规则明确度比发生频率更重要。我们最初按频率排优先级,挑了一个高频场景(“系统响应慢的原因判断”)做分身,结果因为判断过程依赖模糊经验,准确率只有 60% 出头,客户当场质疑整套方案。后来改为规则明确度优先,准确率立刻回到 85%。
4.3 SOP 结构化模板
SOP 不能写成散文,必须拆成四段式结构,否则 RAG 检索命中率会很差:
– id: SOP–DB–007
scene: 数据库连接池耗尽
trigger:
– 指标: db.connection_pool.usage
条件: "> 0.9 持续 5 分钟"
judge:
– step: 查询当前活跃会话数
tool: cmdb_query
– step: 比对历史基线
tool: baseline_query
– step: 若活跃会话数 > 历史 P95 → 判定为异常流量
action:
– level: L3_advisory # 核心库只给建议不自动执行
steps:
– 输出慢查询 Top 10
– 给出限流或扩容建议
– 通知 DBA
boundary:
– 核心业务库不得自动 Kill 会话
– 非变更窗口不得执行重启
escalate:
– 15 分钟未响应 → 通知 IT 主管
– 30 分钟未响应 → 通知数据库供应商
五、关键技术实现
5.1 探测矩阵
| 核心业务系统 | HTTP/HTTPS 拨测 + 关键词匹配 | 状态码、响应时延、关键词缺失 |
| 一般业务系统 | HTTP 首页 / 健康检查接口 | 状态码、响应时延 |
| 数据库与中间件 | TCP 端口 + 轻量连接查询 | 连通性、响应时延 |
| 虚拟主机 | ICMP + 轻量 Agent 心跳 | 连续失败次数、心跳超时 |
| 物理服务器 | IPMI / Redfish 带外探测 | 带外在线、电源状态 |
| 网络设备 | SNMP Get + ICMP | 在线、端口 up/down、错包率 |
| 停运备查系统 | 轻量心跳 | 仅更新台账,不告警 |
5.2 频率分级(不建议全部 10 分钟)
| 核心业务系统 | 2 分钟 | 约 1 分钟 |
| 一般业务系统 | 10 分钟 | 约 5 分钟 |
| 虚拟主机 | 10 分钟 | 约 5 分钟 |
| 物理服务器(带外) | 5 分钟 | 约 2.5 分钟 |
| 网络设备 | 5 分钟 | 约 2.5 分钟 |
| 停运备查系统 | 60 分钟 | 不适用 |
为什么核心系统不用 10 分钟:核心系统约占全部对象的 3%,把周期从 10 分钟缩短到 2 分钟,总探测量只增加约 15%,服务器与网络开销几乎无变化,但核心故障平均发现时间从 5 分钟降到 1 分钟。这是整套方案中性价比最高的一处设计。
5.3 防误报三道保险
这是上线第一天就会决定成败的细节:
async def evaluate(target: Target, results: list[ProbeResult]) –> AlertDecision:
"""连续 N 次失败才告警,恢复同理"""
cfg = target.probe_config
recent = results[–cfg.confirm_times:]
if target.state == State.HEALTHY:
if len(recent) >= cfg.confirm_times and all(r.failed for r in recent):
if cfg.require_cross_validate and not _cross_failed(target, results):
return AlertDecision.IGNORE # 单节点失败,可能是探测机问题
return AlertDecision.FIRE
else:
if len(recent) >= cfg.confirm_times and all(r.ok for r in recent):
return AlertDecision.RECOVER
return AlertDecision.HOLD
物理服务器额外做带外交叉判断:业务网 IP 不通但带外在线 → 系统或网络层故障;业务网与带外都不通 → 硬件掉电。这条判断显著减少了误派单到硬件供应商的情况。
5.4 工具层实现
工具以统一 Schema 注册,供分身调用。关键约束:工具不含业务判断。
from pydantic import BaseModel, Field
class ProbeToolInput(BaseModel):
target_ids: list[str] = Field(..., description="纳管对象 ID 列表")
protocol: Literal["icmp", "http", "tcp", "snmp", "ipmi"]
timeout_ms: int = 3000
@register_tool(
name="probe_executor",
description="对指定对象执行一次探测,返回连通性与响应时延",
input_schema=ProbeToolInput,
side_effect=False, # 只读,无副作用
rate_limit="500/min"
)
async def probe_executor(inp: ProbeToolInput) –> dict:
tasks = [probe_one(t, inp.protocol, inp.timeout_ms) for t in inp.target_ids]
results = await asyncio.gather(*tasks, return_exceptions=True)
return {"results": [normalize(r) for r in results]}
side_effect 标记很重要:处置类工具(重启、清理)标记为 side_effect=True,会被安全闸门拦截并要求人工确认。
5.5 知识工程与混合检索
紫薯 AI OS 的知识库采用 TF-IDF + Embedding 混合检索。实践中我们发现两类知识的检索策略应当区分:
| SOP、规则类 | TF-IDF 权重偏高 | 术语精确,关键词匹配更准 |
| 故障案例类 | Embedding 权重偏高 | 表述多样,需语义相似 |
def hybrid_search(query: str, kb_type: str, top_k: int = 5):
w = {"sop": (0.6, 0.4), "case": (0.25, 0.75)}.get(kb_type, (0.5, 0.5))
tfidf_ids = tfidf_index.search(query, top_k * 3)
vector_ids = vector_index.search(embed(query), top_k * 3)
return reciprocal_rank_fusion(tfidf_ids, vector_ids, weights=w)[:top_k]
知识可溯源:每条知识带来源与责任人,分身回答时引用出处,便于人工核验。这条设计大幅提升了运维人员对分身的信任度——他们能验证,才敢用。
5.6 评测集机制
每个分身配 30-50 条真实场景用例作为评测集,知识更新后必须跑一遍,准确率不达标不发布。
@pytest.mark.asyncio
async def test_inspector_agent_evalset():
cases = load_evalset("inspector") # 42 条真实巡检场景
results = [await run_agent(c.input) for c in cases]
acc = sum(r.match(c.expect) for r, c in zip(results, cases)) / len(cases)
assert acc >= 0.85, f"巡检分身准确率 {acc:.2%} 未达标,禁止发布"
六、资源与数据量估算
| 每日探测次数 | 约 35 万次 | 按分级频率计算 |
| 平均并发 | 约 2.4 次/秒 | 单台探测节点即可承载 |
| 网络开销 | < 1 Mbps | 对生产网络无感知 |
| 年存储占用 | 约 25 GB | 每条记录约 200 字节 |
| 服务器资源 | 2 台虚机(8C/16G/500G) | 主备节点,互为交叉验证 |
原则上不新增硬件采购,全部复用客户已有的 80 台物理机与虚拟化平台。
七、效果指标与验收标准
| 系统主动发现故障占比 | ≥ 60% | ≥ 90% |
| MTTA 平均发现时长 | ≤ 3 分钟 | ≤ 1 分钟 |
| MTTR 平均恢复时长 | 下降 30% | 下降 50% |
| 告警收敛比 | ≥ 10:1 | ≥ 20:1 |
| 分身判断准确率 | 首月 ≥ 70%,第三月 ≥ 85% | ≥ 90% |
| 硬件在线可观测率 | 可联网设备 100% | 含动环传感器 |
关于准确率的分阶段承诺:分身能力是"长出来"的,不是上线即完美。在合同中约定分阶段目标准确率,既给客户明确预期,也避免用上线初期的表现否定整个方案。这是我们踩过的第二个坑。
八、实施计划与成本
| P1 业务梳理 | 3 周 | 岗位、场景、SOP 梳理,知识素材归集 |
| P2 知识工程与底座部署 | 3 周 | 知识结构化入库、评测集构建、首批工具开发 |
| P3 分身配置与工具集成 | 4 周 | 三分身配置、剩余工具开发、接入层开发 |
| P4 试运行调优与交付 | 3 周 | 并行试运行、调优、培训、文档交付 |
首期报价 52 万(不含底座授权):业务梳理与知识工程 15 万 + 三分身配置 18 万 + 工具与集成 13 万 + 训练调优 6 万。
后续分身追加:诊断 12 万、处置 15 万、调度 12 万、运营 8 万、服务 8 万。
九、踩坑记录
十、总结
回到最初的问题:1000+ 虚机、400+ 系统的运维,到底该怎么破?
我们的结论是——不要试图用一个更聪明的系统去替代人,而是把人的岗位能力复制给硅基员工。
三个可复用的经验:
智能运维的终局不是"系统更智能",而是运维人员不再被重复劳动困住。至于盯屏、巡检、派单、填台账——交给硅基同事。
本文方案基于紫薯 AI OS 实现(大模型接入、知识库 RAG、智能体编排与工具调用)。文中数据与报价来自真实项目,已做脱敏处理。欢迎在评论区交流,如需《业务梳理清单模板》与《SOP 结构化模板》可私信索取。更多信息可以参考紫薯ai官网:https://nr.zishuju.cn/solutions/ZS-AIOS-yunwei.html
