SRE和DevOps有什么区别?
站点可靠性工程和开发运营似乎在细节上有很多重叠。我如何知道哪个小组负责什么工作,如何知道哪些工作适合我的技能?
看起来SRE是关于维护服务器和网络,而DevOps是关于维护代码,对吗?两者之间是否仍存在大量重叠?
SRE和DevOps有什么区别?
站点可靠性工程和开发运营似乎在细节上有很多重叠。我如何知道哪个小组负责什么工作,如何知道哪些工作适合我的技能?
看起来SRE是关于维护服务器和网络,而DevOps是关于维护代码,对吗?两者之间是否仍存在大量重叠?
Answers:
DevOps是关于维护代码的,对吗?
DevOps不仅仅与代码,系统或任何事情有关。DevOps是一个非常笼统的术语,涵盖了与软件交付相关的所有内容。
网站可靠性工程是Google推广的术语。通过本文https://landing.google.com/sre/interview/ben-treynor.html,我们可以提取其TL; DR:
从根本上讲,当您要求软件工程师设计操作功能时,就会发生这种情况。
运营,工程和软件开发一起变得模糊。创建和维护成熟的基础架构所需的自动化程度需要这三个方面的技能。骨相关事件是管理员,和工程师,和开发人员。
DevOps Engineering
和SRE work
超越,一个是由谷歌开发,并通过一个很酷的(免费!)本书备份的缩写。
戴夫·斯沃斯基(Dave Swersky)在本·特雷诺(Ben Treynor)对SRE的定义上面已经做出了出色的回应,如今的定义与2003年一样令人发指。
从根本上讲,当您要求软件工程师设计操作功能时,就会发生这种情况。
因此,为进一步定义“ DevOps”,以下是Jennifer Davis和Katherine Daniels 撰写的有效的DevOps一书的摘录:
Devops是一种思维方式和一种工作方式。这是一个分享故事和发展同理心的框架。[不仅仅是]另一种软件开发方法。
[P]实践可以包括软件开发方法,或诸如基础结构自动化和连续交付之类的功能,尽管它不只是这些部分的总和。
尽管这些概念是相关的,并且可能在开发人员环境中经常出现,但仅关注它们却错过了更大的前景-文化和人际关系赋予开发人员强大的力量。
总结:有效的SRE将利用DevOps实践。
-
也:
我怎么知道哪个小组负责什么?
所有权不应隐含;通信!
描述站点可靠性工程和DevOps之间差异的另一种方法是查看Wikipedia对a的解释Site Reliability Engineer
,其解释如下:
站点可靠性工程师(SRE)是针对软件工程师的工作描述,重点是可靠性,可伸缩性和云计算基础架构的开发,这被称为站点可靠性工程(SRE)。
因此,您可以将SRE视为参与Building walls
...
但是,维基百科的解释DevOps
如下:
DevOps ...是一个术语,用于指代一系列实践,这些实践强调软件开发人员和信息技术(IT)专业人员之间的协作和交流,同时使软件交付和基础架构变更过程自动化。它旨在建立一种文化和环境,使构建,测试和发布软件可以快速,频繁且更可靠地进行。
并不是说所有这些DevOps实践实际上都是由业务方面的需求触发的。因此,结合构建和测试(其“ 开发”部分)以及软件发行版,DevOps涉及的是DDR(=需求-开发-发布)文化和环境,有些人可能会从这9秒钟的历史演讲中记住这一点。Tear down this wall
。
请参阅有关计划于2017年5月3日(星期三)美国/美国东部时间(如计算机的消防演习)的短暂中断的问题,以获取有关所有SE网站的示例...由具有职位SRE Manager的用户发布(签名),Stack Overflow,Inc.