Analyzer(默认)¶
analyzer 是 netops 的默认子 agent:一个只读的变更计划起草器。它通过
SQL 从快照数据库收集设备事实,然后把厂商特定的变更计划 —— 每台设备的 CLI、
回滚、事后检查、风险分级 —— 写到 exports/change_plans/。它对实时设备只读:
它读 DB,从不连接或配置设备。
analyzer 还兼管两项被合并进来的工作:
- 调查报告(Workflow D) —— 审计 / "为什么" 的书面分析,导出到
exports/reports/。 - 快照 diff 与漂移(从已退役的
ops-diff子 agent 吸收)—— 对比两个时间点 之间的配置、快照、SQL 状态和拓扑。 - L2 拓扑 what-if —— 基于图拓扑的影响面分析(
inspect_blast_radius), 不是 Batfish 配置模拟。
What-if / 兼容性是另一个子 agent
配置层 what-if —— "BGP 会起来吗…"、可达性、route-map 策略 —— 是
Batfish 驱动的 simulator。analyzer 通过
task("simulator", "…") 委托过去。拓扑查询和 recipe 发现是
topology 子 agent。
何时使用¶
- "规划 / 添加 / 变更 R1 和 R4 之间的一条新 eBGP 会话"
- "写一份调查报告,说明 R3 为什么丢了路由"
- "自昨天的快照以来有什么变化?"(漂移 / diff)
- "R1–R2 链路断了影响面有多大?"
工具¶
| 工具 | 何时使用 |
|---|---|
describe_table |
查询前先查看视图/表的列 |
inspect_devices |
结构化设备事实 —— 传 devices=[] 可发现全部 |
inspect_interfaces |
目标节点的结构化接口事实 |
inspect_blast_radius |
L2 图拓扑 what-if(影响面)—— 非 Batfish |
generate_change_plan |
Fat tool —— 一次调用产出多设备 BFS 变更/升级计划 |
query_evidence |
跨 syslog / 命令输出 / 配置的统一文本检索 |
diff_configs |
对比两个快照之间的设备配置 |
diff_snapshots |
对比两个快照(状态 / 拓扑漂移) |
format_and_export |
把计划或报告渲染并导出到 exports/ |
analyzer 从不持有 execute_cli 或任何写工具 —— 它产出计划,不实施。
示例¶
编排器路由到 analyzer,它读取相关设备事实(inspect_devices、
query_evidence),调用 generate_change_plan,把 Markdown 计划 —— 当前状态、
每台设备的拟用配置、回滚、事后检查、风险 —— 写到 exports/change_plans/。
配置层 what-if 会继续委托出去: