单位 11 / 11

端到端集成:从开始到结束管理事件

收益:

  • 在检测、诊断、缓解、永久解决和学习阶段利用人工智能支持对事件进行端到端管理
  • 即使在恐慌时期,也能够通过将可转移到人工智能的步骤与每个阶段需要人类决策的步骤分开来维持验证纪律。
  • 能够将人工智能优先于“正在发生什么、如何写”问题、人类优先于“我应该这样做、谁是担保人”问题的黄金法则转化为业务反射

端到端集成:利用人工智能端到端管理事件

您学习了前十个单元中的各个部分:脚本编写、日志分析、监控、配置、IaC、文档、预测性维护、变更管理和安全性。但在现实世界中,这些部分并不是一一出现的,而是在一个事件中交织在一起。在最后一个单元中,我们将各个部分整合在一起:您将完整地了解如何管理从半夜开始的事件,从检测到根本原因,从补救到记录,以及在每个阶段使用正确剂量的人工智能。目的不是教授新技术;而是将您作为工程师的反应所学到的知识结合起来,强化整个模块中重复的一个事实:人工智能在每个阶段加速、照亮和蓝图;但确认诊断、运行命令、确认变化并对结果承担责任的始终是人。

在本单元中,您将通过示例整合事件的生命周期(检测、诊断、干预、解决、学习)以及人工智能在每个阶段的作用和限制。

事件的生命周期

每一起严重事件都会经历相似的阶段,而人工智能在每个阶段都有不同的作用。检测:警报响起、用户抱怨、指标偏离基线(单元 4)。验证和范围:这真的是一个问题吗?它的范围有多大?诊断:从日志和指标中找到根本原因(第 3 单元)。响应和缓解:停止损害、解决方法。永久解决方案:通过变更管理(第 9 单元)、脚本(第 2 单元)或配置(如有必要)进行修复(第 5 单元)。学习:事后分析和操作手册更新(第 7 单元)。人工智能在检测中标记异常,在诊断中产生假设,在干预中提供选项,在解决方案中撰写草稿,在学习中生成文档——但在每个阶段,人类都站在决策点。

提示:事件中最危险的时刻是压力最高的诊断和响应时刻——恰恰是盲目信任人工智能的冲动最强烈的时候。你越是着急,你就越能牢牢地抓住“阅读、验证、准备返回”的本能。在恐慌时刻跳过的一次验证会使事件加倍。

从开始到结束的一个例子

让我们具体说一下。 02:10 发出警报:支付服务 p99 响应时间为 6 秒,远高于基线(250–400 毫秒)。检测正确:跟踪有效。确认:多处确认,真实事件。诊断:工程师向AI提供最近20分钟的屏蔽日志和指标; AI 建立了一个时间表,并将减速标记为在 02:08 部署后立即开始——这是很强的相关性,但仍然是一个假设。工程师通过部署日志确认了这一点:是的,02:08 发布了一个版本。应对措施:最快的减少是回滚分配;更改请求中的回滚步骤已准备就绪(单元 9)。工程师首先用金丝雀逻辑在服务器上实现回滚,响应时间提高,然后传播。永久解决方案:真正的根本原因(新版本中的非索引查询)将在第二天平静地修复。学习:起草了一份无人工智能的事后分析报告,并将“部署后 p99 监控”步骤添加到操作手册中。在每个阶段,人工智能都在加速发展;人类在每个决策点都经过验证。

人机分工的黄金法则

您在整个模块中看到的区别成为这里的规则:人工智能在“正在发生什么、可能发生什么、如何写作”的问题上处于领先地位;当涉及到诸如“我现在应该这样做吗?谁能担保这一点?”之类的问题时,人们处于领先地位。人工智能不知疲倦、快速,扫描大量信息并生成蓝图,但它不了解完整的上下文,会产生幻觉,无法处理责任,并且看不到组织的隐藏依赖关系。人是缓慢的,但有背景、责任和判断力。最好的结果是两者之间的正确分工:将重复性、文本性、可生产性的工作委托给人工智能;让验证、决策和执行保持人性化。

三个迷你箱子

案例 1 — 40 分钟从头到尾。在磁盘已满事件中,SRE 使用 AI 加速了整个链:用基线确认警报(5 分钟),将屏蔽日志汇总到 YZ 并发现第一个错误(5 分钟),在真实系统上验证 AI 的“日志轮换停止”假设(5 分钟),通过空运行运行并实施现成的清洁脚本(10 分钟),将事后草图写入 AI 并验证事实(15 分钟)。总计40分钟;没有人工智能的情况下大约是两倍。但每个阶段都有一个验证步骤。

案例2——一时惊慌而跳过了验证。另一队则急忙晋级。它接受了人工智能的第一个根本原因假设(依赖服务),但没有验证它并重新启动了该服务。问题没有得到解决,因为真正的原因是别的。此外,不必要的重启造成了第二次中断。教训:仓促并不是跳过验证的理由;在人工智能假设得到证实之前,行动会使事件升级。

案例 3 — 意识​​到限制。一名工程师正准备实施人工智能针对复杂网络问题敦促的配置更改。但这种变化似乎是不可逆转的,AI并不知道该机构的具体路由规则。工程师停下来,咨询了一位高级网络专家,了解到人工智能的建议会在这个特定的拓扑中创建一个路由环路。了解人工智能的局限性可以防止中断。

四个可复制模板

1) 事件触发总结(分类):

您的角色:高级 SRE、助理事件指挥官。有一个活动活动。我给您的屏蔽警报/指标/日志可以让我快速分类:(1) 症状是什么,(2) 影响范围是什么,(3) 首先要查看的 3 个区域,(4) 每个区域都有一个只读控制命令。决定和执行是我的;送路。数据:[屏蔽]

2)阶段性事件管理指南:

带我一步步了解症状 [症状] 的事件生命周期:检测确认、诊断、缓解、永久解决、学习。在每个阶段,告诉我(a)我需要做什么,(b)何时可以安全地将其委托给人工智能,(c)我必须自己做出什么决定。标记即使我着急也不应该跳过的验证步骤。

3)决策点控制:

我正在处理一个事件,我将要执行以下操作:[操作]。在实施之前,请询问我:(1) 这是可逆的,(2) 我做了/没有做哪些验证,(3) 我是否有回滚计划,(4) 我是否有证据表明此操作确实解决了根本原因?如果你发现有什么东西丢失了,请阻止我。

4)事后整合学习:

对于刚刚解决的事件,[摘要]给了我:(1) 一份无责任的事后分析草案,(2) 3 项永久性改进(监控/自动化/配置),以防止该事件发生,(3) 需要更新的操作手册步骤,(4) 针对类似事件的预警信号建议。写出没有证据的根本原因;以事实为依据。

弱提示/强提示

弱提示:

系统崩溃了,我该怎么办?

惊慌失措、没有上下文、没有验证的情况下,这个提示会收到来自人工智能的通用且可能危险的建议。在这一点上,匆忙最容易导致错误。

强力提示:

您的角色:助理事件指挥官。活动事件:自 02:10 起,支付服务 ip99 响应时间为基线的 15 倍(250-400 毫秒)。我知道 02:08 有一次分发。给我:(1)最可能的假设以及如何以只读方式验证它,(2)最快且可逆的缓解选项,(3)在应用此缓解措施之前我需要控制的风险。我有执行和批准。附加数据:[屏蔽指标/日志]

事件阶段

人工智能的作用

人类的关键决定

检测

标记异常

这是实际事件吗?范围有多大?

诊断

假设生成

哪个假设得到证实?

减少

不提供选项

哪种减少是可逆的?

永久解决方案

草稿/剧本

批准并执行变更

学习

尸检草图

验证事实和教训

常见错误

  • 惊慌失措地跳过验证。匆忙并不能成为放弃“读取-验证-准备返回”反应的理由;随着压力的增加,纪律必须加强。
  • 将假设误认为证据。在未确认人工智能的第一个根本原因建议的情况下采取行动将使事件升级。
  • 忘记人工智能的上下文边界。 AI不知道组织隐藏的依赖关系;在重大变革中,人类的判断占上风。
  • 跳过学习阶段。该活动在当天晚上再次开始,没有事后分析和操作手册更新。
  • 将责任推给人工智能。 “AI是这么说的”不是辩护;执行的责任始终在于人。
注意:在事件管理中使用人工智能并不能取代学习事件管理。车辆可能会发生碰撞、碰撞或无法通行。了解基础知识的工程师使用 AI 的速度更快;不了解基础知识的工程师在使用人工智能时会更快地犯错误。首先建立纪律,然后从人工智能中获得速度。

总之

在现实世界中,各个部分并不是一个接一个地出现,而是在一个事件中交织在一起。在管理从检测到学习的事件时,人工智能在每个阶段都会加速:标记异常、生成假设、提供选项、起草、准备事后分析。但在每个决策点,人们都会停下来——确认诊断、选择减少、批准改变、拥有结果。黄金法则很明确:人工智能在“发生了什么、如何写”的问题上领先,而人类在“我应该这样做、谁是担保人”的问题上领先。在恐慌时期,加强纪律,将假设与证据分开,记住人工智能的背景限制,并从每个事件中吸取操作手册的教训。这个模块的精髓就是一句话:AI是得力助手;工程责任不能委托他人。

应用任务

考虑一下您过去经历(或想象)的一件事件,从头到尾。通过上面的“分阶段事件管理指南”模板,要求AI引导事件经历检测-诊断-缓解-解决-学习的阶段;在每个阶段,分别写下你可以委托给AI的步骤和你需要自己决定的步骤。在诊断阶段通过验证命令确认至少一个人工智能假设。最后,使用“事后集成学习”模板生成事后分析和操作手册更新草案。将整个流程中人与AI的分工总结为7项。

清单

  • [ ] 我是否将事件划分为检测、诊断、缓解、解决和学习阶段?
  • [ ] 我是否区分了可以委托给人工智能的步骤和每个阶段需要人类决策的步骤?
  • [ ] 在诊断中,我是否将AI假设与证据分开并用验证命令确认?
  • [ ] 我是否根据可逆性和回滚计划评估了缓解措施?
  • [ ] 即使在恐慌时期,我是否也保持了“读取-验证-准备返回”的反应?
  • [ ] 我是否从该事件中吸取了事后分析和操作手册的教训?

模块考试

1、以下哪项对人工智能在系统和网络管理方面的定位最准确?

  • A)人工智能是辅助和决策支持工具;关键执行决策的责任和最终批准在于人类 ✔
  • B)人工智能可以在没有人类批准的情况下运行命令并实施生产变更
  • C) 人工智能只在书写文本方面起作用,与系统和网络工作无关
  • D)人工智能总是比人类做出更准确的决定,因此不需要验证

描述:人工智能是一种辅助和决策支持工具,可生成脚本、日志分析和文档等草稿和分析。影响停机、数据丢失和安全的执行决策(例如执行命令或批准更改)的责任和最终批准属于主管工程师。

2. 在生产中运行人工智能生成的命令之前必须执行的验证反射的四个步骤是什么?

  • A) 复制、粘贴、运行、希望
  • B) 阅读并理解、记录、在隔离环境中尝试、准备反馈 ✔
  • C) 点赞、分享、保存、存档
  • D) 删除、重写、压缩、发送

描述:应用于关键输出的四个步骤:(1) 逐行阅读并理解命令行,(2) 将标志和语法链接到官方文档,(3) 在隔离/测试环境中尝试,如果可能,进行试运行,(4) 如果出现问题,准备后备计划(备份、快照)。

3. 自动化脚本“幂等”意味着什么?为什么它很重要?

  • A)脚本每次运行都会产生不同的结果
  • B) 该脚本只能运行一次然后被删除
  • C) 脚本第二次运行不会造成任何危害; ✔ 即使再次触发也安全
  • D) 脚本不包含错误管理

解释:幂等性是指当同一个脚本运行两次或多次时,第二次运行时不会造成损坏或产生错误。建立诸如“如果用户已存在则跳过”、“如果目录不存在则创建目录,如果存在则不碰”等逻辑。这确保了即使再次意外触发,自动化也能安全运行。

4. 保护包含破坏性操作(删除、重新启动)的脚本的最基本方法是什么?

  • A)尽可能快地运行脚本
  • B) 隐藏错误消息
  • C) 直接在生产中测试脚本
  • D) 将破坏性操作置于默认空运行之后,并将实际实现绑定到显式刻度标记 ✔

说明:默认情况下将破坏性进程保持在空运行模式,并且仅使用显式批准标志(例如 --apply)运行实际应用程序,可以让您首先查看脚本运行时会发生什么。空变量检查 (VAR:?) 还可以防止路径错误。

5. 对数分析中的“相关性不是因果性”原则是什么意思?

  • A)两个一起变化的事件并不一定存在因果关系;因果关系也必须得到验证✔
  • B) 在日志中寻找相关性是浪费时间
  • C) 在同时变化的两个事件中,其中一个肯定是另一个的原因。
  • D)因果关系只能由人工智能来确定

解释:仅仅因为两个事件同时发生(相关性)并不意味着其中一个事件导致另一个事件(因果关系);两者都可能是第三个事件的结果。 AI 提出的“X 可能导致 Y”的建议只是一种假设,在系统中得到验证之前,不会被视为发现结果。

6. 在性能监控中测量响应时间时,为什么百分位 (p95/p99) 比平均值更受青睐?

  • A)百分位数比平均值更容易计算
  • B)平均值掩盖了少数人的糟糕经历;百分位数揭示了这些隐藏的问题✔
  • C) 平均值总是错误的,不应该使用
  • D) 百分位数仅适用于 CPU 指标

说明:平均值隐藏了一小部分用户的非常糟糕的体验。尽管平均值看起来是 200 毫秒,但 p99 可能是 6 秒;这意味着百分之一的请求速度非常慢。百分位数使这少数人被平均水平隐藏的痛苦变得可见。

7. 什么是配置管理中的“漂移”?为什么它很危险?

  • A) 夜间网络流量下降
  • B) 服务器的物理迁移
  • C) 随着时间的推移,服务器彼此之间以及标准之间存在偏差; ✔ 在出现问题之前不可见
  • D) 配置文件自动备份

描述:漂移是指随着时间的推移,通过无记录的手动更改,服务器之间以及服务器与标准之间的偏差。它的危险在于它的沉默:直到问题发生之前它是不可见的,然后一台服务器的行为与其他服务器不同,诊断需要几个小时。通过比较,AI 使偏差变得可见;金焊原理可防止。

8. 为什么“计划”步骤是 IaC 工具(如 Terraform)中最重要的安全防护栏?

  • A) 该计划使代码运行得更快
  • B) 删除计划状态文件
  • C) 该计划仅修复代码格式
  • D) 计划显示实施前将添加、更改和删除的内容;防止数据丢失✔

描述:计划(terraform plan / ansible --check)在执行代码之前给出“将改变什么”预览:将添加、更改、删除多少资源。特别是,“销毁”和“强制替换”行表明了实施前数据丢失的风险。不阅读计划就申请是最昂贵的错误之一。

9. 为什么要小心保护 Terraform 状态文件而不是粘贴到 AI 或开放存储库中?

  • A) 纯文本机密可以包含在国家文件中;如果泄露,身份信息将被公开✔
  • B) 因为状态文件太大
  • C) 状态文件已被加密且无法读取。
  • D) 共享状态文件时代码运行得更快

描述:状态文件保留托管基础设施的当前状态,并且可以包含纯文本机密(数据库密码、密钥)。因此,它应该保存在加密的、访问受限的、锁定的远程后端中;它永远不应该被放置在公共车辆或存储库中,否则秘密将会泄露。

10. 文档中“错误的操作手册比没有操作手册更危险”这句话强调了什么?

  • A)编写操作手册是浪费时间
  • B) 在危机中盲目执行未经检验的操作手册;一步错误就会酿成灾难✔
  • C) 操作手册仅供管理员使用
  • D)文档永远不应该更新

说明:没有操作手册的团队在危机期间会谨慎而多疑;但拥有“官方”操作手册的人会在压力下毫无疑问地应用它。如果操作手册未经测试,一步错误,盲目执行就会酿成灾难。这就是为什么每个操作手册都必须在真实环境中进行彻底的测试和标记。

11. 在预测性维护中,了解磁盘何时接近故障的正确方法是什么?

  • A) 立即更换单个损坏的 SMART 磁盘
  • B)完全忽略SMART数据
  • C) 查看值随时间的变化趋势; ✔ 持续且加速增加信号数量
  • D)仅在磁盘完全崩溃后才采取行动

解释:一次错误的 SMART 读数不会引起恐慌;光盘偶尔会出现错误被纠正是正常的。真正的信号是趋势:随着时间的推移,价值(例如重新分配的部门)持续加速增长。这就是为什么人工智能被赋予一个时间序列,而不是单个读数。

12. 生产转换中最常被忽视但最关键的两个部分是什么?

  • A) 更改的颜色和名称
  • B) 变更人的职务和部门
  • C) 在社交媒体上宣布变更
  • D) 回滚计划和成功验证标准 ✔

说明:如果在实施更改之前没有对“如果出现问题,我究竟如何回滚”(回滚计划)和“如何证明它是成功的”(成功验证标准)等问题没有书面答案,则该更改还没有准备好。如果没有这两者,一个损坏的更改可能会被认为是“完整的”。

13. 为什么首选“金丝雀”方法而不是同时向所有服务器推出安全部署(新版本/补丁)?

  • A) 更改首先应用于一小部分;错误影响一小部分,而不是整个机群,并且会及早发现 ✔
  • B)金丝雀分布消耗更少的电力
  • C) Canary 使得部署验证完全没有必要
  • D) 金丝雀部署仅适用于数据库

描述:金丝雀部署首先将更改应用于一小部分(一台服务器,5%的用户)并进行监控。这样,错误会影响一小部分而不是整个机群,并且会被及早发现。一次传播的错误会同时影响所有用户。

14. 在安全工作中使用人工智能时,不变的道德和法律规则是什么?

  • A) 人工智能可以自由地用于扫描任何系统中的漏洞
  • B) 道德准则仅适用于大型机构
  • C) 仅用于授权系统并用于防御目的;用于未经授权的访问或攻击是犯罪行为 ✔
  • D) 为了学习而渗透到别人的系统是免费的。

说明:系统和网络信息具有双重用途。人工智能只能在您拥有书面授权的系统中使用并用于防御目的(日志威胁检测、强化、事件响应)。使用它扫描或渗透不属于您的系统属于未经授权的访问,属于犯罪行为;必须使用一个孤立的实验室来学习。