Worker 角色

七个 Operational 角色,五个专家技能,一个 Manager。

OpsKeeper 里的每个 Worker 都有明确的契约:明确的角色、明确的工具白名单、明确的最大轮次预算。由 Manager 决定谁什么时候跑。

Operational Worker

阶段和角色一一对应。

每个 Operational Worker 都绑定闭环中的一个或多个阶段。契约写在 skill_meta.yaml 里,运行期强制执行。

告警接入
alerter
12

聚合来自 Prometheus / Loki / Tempo / Webhook / On-call 的告警。三条 PG / Redis / Host 静态规则,九条 DIAGNOSIS_SKILL_MAP 条目,LLM 语义去重阶段配熔断器。

read:alertsread:topicsdedup:LLMdedup:rules
根因分析
investigator
40

跨指标、日志、追踪、代码、主机、拓扑的只读因果链追踪器。回溯到 patient zero 并返回带置信度的证据链。

read:metricsread:logsread:tracesread:gitread:topology
RCA 审计
critic
8

在严重度 ≥ critical 时对 RCA 做同行审计。检查证据链,返回 needs_correction 标记。不会无中生有。

read:rcaread:evidence
预审
reviewer
6

在 HITL 之前对每个可变更或破坏性动作做第二双眼睛。仅批准最小必要的爆炸半径。

read:proposalread:incident
窄域变更
repairer
1

执行可变更动作。每个动作必须精确匹配一个已审批的事件、清单、资源、命令和 payload 哈希,否则默认拒绝。

execute:approved-only
独立验证
verifier
4

只调用 recovery.verify。四项指标白名单,三级告警分级,向 Manager 返回 VerifiedDelta。

read:recovery.verify
复盘撰写
reporter
10

由预计算的 ReportFacts 撰写结构化周期报告。资源趋势、监控覆盖、变更 —— 数字绝不杜撰。

read:factswrite:report
专家技能

把领域专家挂到事件上。

专家技能放在 agents/ 下,按路由规则(而不是 Manager 心情)挂到事件上。用来丰富 RCA 或撰写复盘章节。

specialist-sre

站点可靠性模式:发布安全、特性开关分析、依赖爆炸半径。

specialist-network

网络层诊断:DNS / LB / BGP / 路由传播 / 丢包。

specialist-compute

CPU 调度、容器 limits、kernel cgroup 压力、throttling 检测。

specialist-disk

文件系统压力、IOPS 饱和、副本延迟、journal replay。

specialist-ops

运维胶水:变更窗口、On-call 轮值、沟通模板。

技能元数据

Worker = skill_meta.yaml + 工具白名单。

技能放在 Nacos Config 里,30 秒轮询热加载;本地降级支持离线安装。控制平面读的是同一份 schema。

skills/alerter/skill_meta.yaml
# skills/alerter/skill_meta.yaml
name: alerter
role: intake
phase: detected,correlated
safety_level: L0
max_turns: 12
tool_allowlist:
  - read:alerts
  - read:topics
  - dedup:rules
  - dedup:LLM
inputs:
  - AlertSet
outputs:
  - Incident
  - CorrelationID
description: |
  多源告警聚合 + 语义去重。
  LLM 去重阶段带熔断器。