谷歌云的SRE团队最近发表了一篇文章,介绍了他们如何内部使用基于人工智能技术的Gemini CLI来解决实际发生的故障问题。这种做法通过将智能分析功能直接集成到终端操作工具中,有效提升了关键基础设施运行的可靠性,并缩短了事故响应时间。

据文章作者介绍,建立在Gemini 3技术基础上的Gemini CLI能够在故障处理的每一个阶段为团队提供帮助——从故障分类与初步应对措施,到根本原因分析以及自动化的事后总结工作。这一工具有助于降低故障缓解的平均时间,将用户受到的影响降到最低,同时确保SRE团队能够始终掌控整个处理过程,保证操作的安全性与有效性。谷歌的开发者倡导者Riccardo Carlesso与软件工程师Ramón Medrano Llamas详细阐述了他们的最终目标:

“我们非常重视故障缓解的平均时间。与专注于彻底解决问题的‘平均修复时间’不同,‘平均故障缓解时间’关注的是行动的速度——我们能多快消除故障带来的影响?在SRE领域,团队通常会设定5分钟的服务水平目标,以便尽快开始处理故障。”

文章作者还指出,虽然典型的故障处理过程包括四个标准阶段,但Gemini CLI能够在每一个环节发挥作用,从而帮助降低故障缓解的平均时间。他们以一个虚构的故障案例为例,展示了如何完全通过终端界面来完成整个故障处理流程——从初始排查到最终措施的实施。

“这对于大型语言模型来说是一项非常适合的任务:它们可以识别故障的症状,并选择相应的应对方案。这些应对方案是动态生成的,旨在确保代理能够安全地执行相应的操作。这些方案中可能会包含具体的命令指令,也会包括用于验证变更是否有效解决了问题,或者在必要时恢复原始状态的指示。”

目前,在实施任何应对措施之前,仍然需要人工进行审核确认。不过,随着代理技术的发展以及安全防护机制的不断完善,这种对人工审核的依赖预计会逐渐减少。在执行任何操作时,都必须进行明确的安全检查——因为在某种环境中被认为是安全的操作,在另一种环境中可能会带来风险。Gemini CLI所采用的多层安全控制机制,确保了代理只能作为操作人员的辅助工具来使用,而不会自主执行任务。Houzz公司的资深基础设施工程师Wen-Tsung Chang也强调了人工审核的重要性:

“无论我们目前处于哪个处理阶段,都应当始终保持责任心,绝不放弃运用批判性思维来进行问题分析。”

接下来的重点就是找出根本原因并制定长期的解决方案。在确认基础设施运行正常后,问题就被定位在应用程序的逻辑代码中,开发人员也会被引导去查看相关的源代码。

最后一步是进行事后分析:虽然整理时间线、日志以及相关操作步骤往往很繁琐,但Gemini CLI可以通过自定义命令来简化这一流程。这些命令能够从事件记录中提取对话历史、各项指标及日志信息,生成CSV格式的时间线文件,创建Markdown文档,并提出防止类似问题再次发生的措施。Carlesso和Medrano Llamas指出,虽然他们的示例中使用了一些谷歌内部的工具,但这种分析方法具有普遍性。他们总结道:

也许最令人兴奋的是接下来会发生什么。我们刚刚生成的那份事后分析报告?它会成为训练数据。通过将以往的分析结果重新输入到Gemini系统中,我们就形成了一个自我提升的良性循环:今天调查得出的结果,会成为明天解决问题的依据。

使用Gemini CLI、MCP服务器来连接Gemini与Grafana、Prometheus、PagerDuty等工具,再加上自定义命令,就可以构建出类似的 workflows,从而简化与Gemini CLI的交互过程。

Comments are closed.