第 113 章 Agentic 运维实践:让系统安全失败并可由他人恢复

第十九部 生产实践与综合项目

第 113 章 Agentic 运维实践:让系统安全失败并可由他人恢复#

本章目录
113.1 智能制片职责边界、巡检与版本发布113.2 权限、幂等与预算背压113.3 死信恢复、人工队列与验收113.4 夜班事故、队列演练、交接与生产复盘

运维岗位维护代理注册、工作流、权限、预算、事件、评测和恢复。目标不是让模型永不出错,而是错误被限制、证据被保存、任务可恢复、不可逆决定仍由正确的人负责。

113.1 智能制片职责边界、巡检与版本发布#

职责边界。

运维可部署工作流、回滚 Prompt、开关熔断、处理死信和恢复状态;不能批准故事、权利或发布。输入是版本化组件与政策,输出是健康系统、Trace、事件、SLO 和事故证据。

生产权限短时授予,测试环境无真实发布和真实预算。

日常巡检。

检查任务积压、死信、熔断、预算异常、上下文失效、评测漂移、人工等待和发布队列。看趋势而非只看红灯。

API 成功率与生产批准率分开。供应商 99% 成功但候选批准率下降,仍需调查。

版本发布。

Prompt、适配器、规则和评测器有测试、灰度和回滚。运维负责人部署一个 Prompt 新版到 10% 流量,比较 Schema、拒绝率、成本和错误类型。

Blocker 逃逸触发自动回滚,已生成候选标版本,不重新解释历史。

113.2 权限、幂等与预算背压#

权限红队。

让镜头代理尝试改锁定剧本、超预算调用和发布。资源层必须拒绝并记录安全事件。提示中的“紧急”不扩大 Token。

外部研究文本注入上传指令,代理因无外发权限无法完成攻击。

幂等和重复。

重复投递批准事件,确认只创建一次下游任务、一次预算结算和一次供应商调用。Worker 在调用后、记录前崩溃,运维负责人使用调用意图和远端任务查询恢复。

手工删除重复记录不计通过,必须修业务不变量。

预算与背压。

生成队列超过人工审批能力时,工作流减速,不继续扇出。预算耗尽时保存部分候选并生成升级包,不静默降级。

运维负责人调整并发和优先级,保证发布 blocker 与低风险预演不争同一队列。

113.3 死信恢复、人工队列与验收#

死信与恢复。

处理一个因 Schema 冲突进入死信的任务:查看原输入、修上游、创建新任务并链接旧记录。不能直接改死信 payload 重放。

删除物化视图后从事件与快照恢复,比较任务、预算和资产状态。

人工队列。

审批是正式节点,有 SLO、证据和升级。批量候选可比较,但权利与发布逐项确认。队列拥堵触发上游背压和制片通知。

运维不代替审批者点击通过。

验收与交付。

可观测性 15%;安全权限 15%;版本灰度 15%;幂等恢复 20%;预算背压 15%;死信恢复 10%;Runbook 交接 10%。

  • 不可逆动作有技术门禁。
  • 重复事件不重复花费。
  • 组件可灰度和回滚。
  • 预算耗尽安全停止。
  • 非原作者可按 Runbook 恢复。

交付:ops_dashboard_spec.mdcanary_report.csvsecurity_events.jsonlidempotency_tests/dead_letter_report.mdrecovery_drill.mdoncall_runbook.md

113.4 夜班事故、队列演练、交接与生产复盘#

模拟夜班:重复事件与预算异常。

凌晨 01:14,监控显示同一镜头两次供应商扣费。值班运维负责人先暂停该任务类型的新扇出,按 correlation ID 查看事件:shot.approved 被重复投递,任务表只创建一条,但 Worker 崩溃后重启,外部调用意图尚未提交便再次调用。

运维负责人查询两个远端任务,保留较早结果,另一个标重复费用并通知制片;修复采用调用前持久化意图、稳定幂等键和远端任务恢复。随后在测试环境注入“调用成功后立即崩溃”,确认只产生一次外部任务。系统恢复后先开放 5% 流量。

02:06,过期身份资产从缓存进入 Prompt。运维负责人通过资产晋升事件发现缓存失效消费者死信。相关候选全部隔离,缓存键加入身份版本校验和,死信修复后创建新任务而不修改旧事件。

人工队列背压。

早晨视觉审批积压 83 项,运维负责人降低低风险生成并发,把主角近景和发布 blocker 提升优先级,通知制片容量变化。没有让代理自动批准低分候选。

Runbook 交接测试。

另一名运维负责人按 Runbook 重放事故,从告警找到 Trace、判断安全状态、执行熔断、恢复和验证。任何需要原值班者口述的步骤都转成文档或自动查询。

演练主持人点评:运维不以“服务没停”自豪。错误重复扣费、旧资产污染或权限越界即使没有宕机,也是生产事故。合格系统要安全、可解释、可恢复,并尊重人类决定边界。

生产现场复盘。

演练主持人给出一条从素材批准到重复扣费的分布式 Trace,运维负责人标出事件、任务、调用意图、供应商任务和结算之间的不变量,提出崩溃点与恢复算法。答案不能是“加数据库锁”,需说明锁保护什么、租约过期和重复消息怎样处理。

第二题要求为镜头代理设计最小 Capability Token:可读当前场 Pack,可写候选,可调用三次低清模型,但不能改锁定台词、读取授权原件或发布。第三题给出人工审批积压,运维负责人需设计优先级与背压,不能让模型自动放宽门槛。

最后由另一人按运维负责人 Runbook 完成一次快照恢复。若步骤依赖隐含环境变量、私人密钥或作者记忆,交接项验收不通过。生产证据包括 Trace、策略版本、演练日志、恢复对比和回滚。运维能力由故障条件下的业务一致性证明,不由正常日的绿色仪表盘证明。

恢复后还需运行不变量审计,确认预算、任务、资产和审批数量与故障前一致;服务能启动但业务账本错乱,仍然属于恢复失败。