Table of Contents

An Overlooked Engineering Skill

一个被忽视的工程技能

让我告诉你我有一次为100种不同的服务随时待命。

这是怎么发生的呢?我的团队负责连接由其他公司运营的各种网络服务。这些服务在相同的物理基础设施之上运行,但在其他方面却极为不同。路由协议、应用协议、防火墙规则–一切都不同。

有一天,我可能会处理一个对现有服务的新访问请求,接下来,我可能会通过几个防火墙和NAT(网络地址转换)设备来调试一个应用程序,这些设备上的服务是一个承包商上个月委托的,他已经转移到另一个工作。在一个理想的世界里,当该服务出现故障时,拥有最多背景的人将会待命。但是这个世界并不是理想的。

如果失败了,我们做了什么?答案是:图表。如果你要求某人画一张代表一个系统的图,你就能深入了解他们是如何思考这个系统的。

请你的团队中的两个人画一张你的团队拥有的系统的概览图,然后比较这两张图。这两张图的异同可能会揭示出每个团队成员在与系统互动时使用的心理模型。图是一种交流工具,但更多的是一种记录和分享心理模型的工具。它们最大的力量不在于它们所显示的内容,而在于它们如何表达和塑造人们对系统的思考。

一旦一个心理模型可以被记录、复制和分享,它就成为一个通用的抽象概念。它加速了交流,并给人们提供了标准的工具,他们可以在推理行为、故障和对系统的修改建议时参考。即使这些抽象概念并不严格准确,当一个团队中的大多数人分享一个系统的相同心理模型时,该系统的行为将随着时间的推移而演变,以符合该模型。

跟随其他网络工程师的脚步,我们应用了他们在不同层(物理、数据链路、网络、路由和安全策略)绘制图表的惯例,甚至为我们的基础设施和我们运行的服务的设备图标制定了一些事实上的标准(some de facto standards)[1]。我们有一个物理基础设施的标准图。完整的版本包括九对设备;它可以减少到五对设备或五个单一的逻辑设备,这取决于需要什么级别的细节。每张图都可以由团队中的任何人凭记忆画出来。

然后,我们为每个服务创建了这些标准图的变体,并叠加了具体细节。当被打电话通知(on call)到一个不熟悉的服务时,我能够迅速定位并理解服务的结构。

每当我加入一个团队,我都会寻找他们的图表来帮助理解系统的抽象。如果没有人可以教我有意义的抽象,那么我就画出现有的东西,并尝试用这些图来寻找抽象和模型来帮助我理解。

那么,我如何去做呢?

  • 如果我从一些简单的抽象概念开始,我为每个抽象概念建立一个图。
  • 如果我从图表开始,我就思考哪些图表能提供有用的心理模型。
  • 如果我什么都不做,我就画出存在的东西,看看我发现了什么模式和结构。

记住,目标不一定是100%的准确性。优先考虑人的因素:图表和抽象应该是令人难忘和有用的,并应随着时间的推移保持更新。毕竟,使用你的图表的终究是人,无论是用于参考(如前面的服务图)还是用于研究。

我们如何构建本书的结构

SRE虽然涉及复杂的技术系统,但归根结底是一种文化实践。文化是人的产物,这启发我们根据你在组织中的SRE数量来组织本书的各个部分–你具体处理什么,你的一天是怎样的,取决于有多少个SRE工程师。我们将本书的文章分为 “SRE新手” 、0-1个SRE、1-10个SRE、10-100个SRE和 “SRE的未来 ”。

读者如果想找寻先从哪里开始的指导,可以直接跳到最适用于自己的部分;但是,你仍然会发现阅读那些目前并不适用于你日常的部分的文章的价值。

在0到1个SRE时,还没有人被指定为SRE,或者你已经找到了你的第一个SRE,这个角色看起来几乎是孤独的。

在1到10名SRE时,你正在组建一个团队,有知识共享和分工的能力。

在10到100个SRE时,你已经成为一个组织,你需要思考的不仅仅是你所从事的系统,还需要思考如何组织这么多SRE。

“SRE新手” 涵盖了基础性的话题(尽管并不详尽!),对于那些刚刚开始SRE之旅的人来说是很有帮助的,即使是最有经验的SRE,也是一种复习。 “SRE的未来” 包含了一些文章,这些文章探讨了SRE潜在的发展方向,或者是(目前)坐拥时代潮流。

没有必要按照任何特定的顺序阅读本书。你可以从头到尾读一遍。或者,如果你对某个特定的主题感到好奇,可以翻到索引,在那里你可以找到关于该主题的所有文章。把它作为参考指南,或者是灵感的来源–可以在需要的时候提供一个震撼。或者,也许可以建立一个阅读俱乐部,每周一次挑选一篇文章与同事讨论。这就是散文集的魅力所在。我们希望你和我们一样喜欢阅读它们。

结语

SRE系列的文章,有时间我就会翻译一些,希望大家能学到对自己有用的东西。谢谢

翻译不易,转载时请注明原文链接,谢谢

延伸阅读

1.de facto standard
A de facto standard is a custom or convention that has achieved a dominant position by public acceptance or market forces (for example, by early entrance to the market). De facto is a Latin phrase that means in fact (literally by or from fact) in the sense of “in practice but not necessarily ordained by law” or “in practice or actuality, but not officially established”, as opposed to de jure.