SRE和DevOps有什么区别?

站点可靠性工程和开发运营似乎在细节上有很多重叠。我怎么知道哪个小组负责什么,我怎么知道什么工作适合我的技能? , 那是对的吗?两者之间是否仍存在大量重叠?

评论

我认为DevOps已经被滥用为一个术语,以至于在这一点上它什么都没有。

我与之交谈的一家公司拥有SRE和DevOps团队。他们告诉我DevOps用于创建新应用程序(0-6个月),而SRE维护旧应用程序。两位都是使用自动化,编码和发布应用程序的开发人员。

我认为Google关于SRE的书是一本好书,可以理解它的含义:landing.google.com/sre

#1 楼


DevOps与维护代码有关,对吗?


DevOps与代码,系统或任何事物都不是“正当的”。 DevOps是一个非常笼统的术语,涵盖了与软件交付相关的所有内容。

站点可靠性工程是Google推广的术语。从本文https://landing.google.com/sre/interview/ben-treynor.html可以提取其TL; DR:


从根本上讲,当您问一名软件工程师
设计一个操作功能。创建和维护成熟的基础架构所需的自动化程度需要这三个方面的技能。 SRE是管理员,工程师和开发人员。

另请参见:
http://shop.oreilly.com/product/0636920041528.do

评论


DevOps不仅限于软件,这是一个误解。它应该一直与产品设计,产品要求,文档等联系在一起。它应该遵循从客户到客户的整个价值链。限制视图会减少影响,并最终导致人们误解了作为更高级的发布工程师的角色。

–吉里·克劳达(Jiri Klouda)
17年1月1日在1:14



我还不了解DevOps Engineering和SRE work之间的区别,除了那是Google开发的首字母缩写,还有一本非常酷(免费!)的书作为后盾。

–BlackVegetable
17年4月25日在21:45

站点可靠性工程师是实际职位和职务说明。它暗示着它所说的。可以在软件方面暗示DevOps的标题是Platform Engineer,您可以在其中构建和自动化供开发人员部署的平台。同时,SRE是负责过去典型操作的人员。这些有点轶事,但可能可以帮助您了解@BlackVegetable。

– Matt O.
17年12月11日19:30在

有很多来自Seth Vargo和Liz Fong(在Google上)的YouTube视频。它们很清楚:“ SRE类实现DevOps。 SRE是遵循许多DevOps原则的具体,正规的实践。

–戴夫·斯沃斯基(Dave Swersky)
18年3月29日在20:18

另请参阅:youtube.com/watch?v=uTEL8Ff1Zvk&t=2s

– sethvargo
18年9月18日在0:56

#2 楼

Dave Swersky在上面已经对Ben Treynor对SRE的定义发表了出色的回答,而今天对它的定义和2003年一样令人发指。设计一个操作函数。


因此,为进一步定义“ DevOps”,以下是Jennifer Davis和Katherine Daniels撰写的有效的DevOps一书的摘录: />
Devops是一种思维方式和一种工作方式。这是一个用于分享故事和发展同理心的框架。[不仅仅是]
另一种软件开发方法。或诸如
基础设施自动化和持续交付之类的功能,尽管[br]它不仅是这些部分的总和。在devops
环境中,仅专注于它们会错过更大的图景–赋予devops力量的文化和人际关系。 SRE将利用DevOps做法。

-

还:


我怎么知道哪个小组负责什么?


所有权不应该是隐式的;交流!

#3 楼

站点可靠性工程或多或少地属于传统运营,但高度自动化且受版本控制,这也称为基础架构即代码。这是一个明确定义的垂直角色。在现代DevOps中,这是与操作相关的垂直切片。您可以拥有一个SRE团队。

DevOps对组织来说是一种文化变革。除了垂直,自上而下的管理结构外,它还沿着整个价值链上的工作交付路径在团队之间建立了水平联系。对于工程师而言,这是一个松散定义的水平角色,将多个团队绑定在一起,以确保工作顺利,快速地通过整个组织。您不能拥有一个DevOps工程师团队,这是一个矛盾,因为跨越团队边界是该角色的关键部分。

#4 楼

描述站点可靠性工程与DevOps之间差异的另一种方法是查看Wikipedia对Site Reliability Engineer的解释,其开头如下:


站点可靠性工程师(SRE)是对软件工程师专注于可靠性,可伸缩性以及称为站点可靠性工程(SRE)的云计算基础架构的开发。

但是,Wikipedia对Building walls的解释是这样开始的:软件开发人员和信息技术(IT)专业人员之间的沟通,同时使软件交付和基础架构更改的过程自动化。它旨在建立一种文化和环境,使构建,测试和发布软件可以快速,频繁且更可靠地发生。实际上是由业务方面的需求触发的。因此,结合构建和测试(其中的“开发”部分)以及软件发行版,DevOps涉及的是DDR(需求-开发-发布)文化和环境,有些人可能会从历史演讲的这9秒中记住DevOps

有关所有东南部站点的示例,请参阅有关计划于2017年5月3日星期三美国东部时间(星期三)进行的短暂停机的问题(例如计算机的消防演习)...由具有职位名称SRE Manager,Stack Overflow,Inc.的用户签名。

评论


我不认为ARE涉及建造隔离墙。你从哪里得到的?

–雄·柴莫夫
18年7月5日15:58

另外,汤姆·利蒙切利(Tom Limoncelli)不仅在Stack Exchange工作,而且闻名遐lot。

–熊佳亚诺夫
18年7月5日在16:00