DevOps 和站点可靠性工程 (SRE) 之间的区别
世界已经看到了先进的软件开发过程,越来越需要在更快的开发与更慢的部署和运营实践之间渡过难关。
十多年来,DevOps 和站点可靠性工程 (SRE) 两个等效的想法在软件开发领域一直是当代的。乍一看,他们可能看起来像竞争对手。但实际上,他们是竞争对手。以及拼图的互补部分,它们可以很好地组合在一起。
随着 DevOps 流程的发展,对具有关键实践和工具专业知识的专业人员的需求不断增加。 DevOps 并没有为运维人员开辟新的机会,而是为他们提供了合乎逻辑的职业继任。需要将站点可靠性工程作为 DevOps 的特定执行。
在本文中,我们将解释 SRE 和 DevOps 如何促进构建可信赖的软件,它们之间的相似之处和不同之处,以及它们何时可以有效地协同工作。那么,让我们进入实际的话题。
1.现场可靠性工程(SRE) :
站点可靠性工程或 SRE 是一种特殊的、软件优先的信息技术操作方法,由一组类似的实践支持。 SRE 的主要关注点是系统可靠性,这被认为是任何产品的最基本特征。
一旦系统足够可靠,SRE 就会开始添加新功能或生产新产品。它还努力密切关注跟踪结果、显着提高性能和自动化操作任务。
2.开发运维:
DevOps 一词是由 Patrick Debois 于 2009 年发明的开发和运营。只不过是在整个服务生命周期的开发和运营之间的一套实践。其原理与 SRE 相同:
- 在工程实践中应用于操作任务、评估结果以及相信自动化而不是手动工作。但它的关注点要大得多。
- 它首先作为一种文化和思维方式出现,并没有具体说明如何具体实施其想法。
- 它通常被视为对主要 SRE 方法的推断,以便它们可以被更大范围的组织使用。
DevOps 和 SRE 之间的异同:
DevOps 和 SRE 之间的主要区别在于 DevOps 是关于需要做什么,SRE 谈论如何做到这一点。
表示两者的相同点和不同点:
1. 减少组织孤岛:
大型企业通常具有复杂的组织结构,许多团队各自为政。每个团队都在以不同的顺序绘制产品,没有与公司的其他人沟通,因此无法看到整体的大局。这可能会导致挫败感、部署受挫以及由于延迟而导致的高成本。
- DevOps 的工作是减少孤岛,并明确没有任何其他团队不与任何其他公司结盟。
- SRE 不会考虑公司中有多少孤岛,而是更多地考虑如何让每个人都参与讨论。这是通过在整个公司使用相同的技术和工具来完成的,这有助于在每个人之间共享所有权。
2.接受失败为正常:
DevOps 通过同意失败作为必然发生的事情来拥抱这一点,这可以帮助团队学习和成长。
SRE 不希望出现任何错误或失败,即使这是我们可以从中学到的东西。
3. 实施渐进式改变:
公司希望比以前更快地工作。他们希望定期发布,不断更新产品,并让团队成员对新技术和相关技术保持活跃。
DevOps 是为了改变,但是以渐进和处理的方式。
DevOps 和 SRE 都希望快速行动,研究表明,与 DevOps 相比,SRE 降低了失败的成本。
4. 利用工具和自动化:
正如我们之前所知,DevOps 和 SRE 的主要点是自动化。工具和自动化鼓励包括尽可能多的自动化和工具,直到它们通过手动删除任务为开发人员和运营提供价值。
5.测量一切:
这里的主要区别在于,SRE 将运营概念作为软件问题进行了推广,这导致他们定义了衡量可访问性、辛勤工作、正常运行时间和中断的规范方法。
它还确保公司中的每个人都同意如何衡量可靠性以及在可用性超出规范时该怎么做。