DevOps、SRE、平台工程的区别

这篇具有很好参考价值的文章主要介绍了DevOps、SRE、平台工程的区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

DevOps、SRE和平台工程的概念在不同时期出现,并由不同的个人和组织开发。
DevOps、SRE、平台工程的区别

  • DevOps作为一个概念是由Patrick Debois和Andrew Shafer在2009年的敏捷会议上提出的。他们试图通过促进协作文化和在整个软件开发生命周期中共享责任来弥合软件开发和操作之间的差距。
  • SRE,即站点可靠性工程,是谷歌在21世纪初首创的,用于解决管理大型复杂系统的操作挑战。谷歌开发了SRE实践和工具,如Borg集群管理系统和Monarch监控系统,以提高其服务的可靠性和效率。
  • 平台工程是一个较新的概念,建立在SRE工程的基础上。平台工程的确切起源不太清楚,但它通常被理解为DevOps和SRE实践的扩展,重点是为支持整个业务视角的产品开发交付一个全面的平台。

值得注意的是,虽然这些概念出现在不同的时期。它们都与软件开发和操作中改进协作、自动化和效率的更广泛趋势有关。

在过去的十年中,工程和技术组织已经将构建和部署云原生应用程序的最佳实践集合在一起。这些最佳实践包括持续交付、容器化和构建可观察系统。
与此同时,云原生组织已经从根本上改变了他们的组织方式,从大型部门(开发、QA、运营、发布)转移到较小的独立开发团队。这些应用程序开发团队得到两个新功能的支持:站点可靠性工程和平台工程。SRE和平台工程是传统运维团队的精神继承者,将软件工程的学科带入运维的不同方面。

DevOps、SRE、平台工程的区别

站点可靠性工程和平台工程

  • 平台工程团队应用软件工程原则来加速软件交付。平台工程师确保应用程序开发团队在软件交付生命周期的所有方面都是高效的。
  • 站点可靠性工程团队应用软件工程原则来提高可靠性。站点可靠性工程师将影响云应用整体可靠性的故障频率和影响降到最低。

这两个团队经常混淆,这两个术语有时可以互换使用。事实上,一些组织将SRE和平台工程合并到相同的功能中。之所以会出现这种情况,是因为这两个角色都适用一套共同的原则。

  • 平台即产品。这些团队应该花时间了解他们的内部客户,制定路线图,制定发布节奏计划,编写文档,以及完成软件产品中的所有事情。
  • 自助服务平台。这些团队构建自己的平台供内部使用。在这些平台中,对最佳实践进行了编码,因此这些平台的用户无需担心——他们只需按下按钮即可。在Puppet Labs的《2020年DevOps现状报告》中,Puppet Labs发现,高功能DevOps组织比低功能DevOps组织拥有更多的自助服务基础设施。
  • 对消除辛劳的持续关注。正如谷歌SRE书中定义的那样,辛劳是手动的、重复的、自动化的、战术的工作。最好的SRE和平台团队能够识别并消除辛劳。

平台工程

平台工程师不断地检查从源代码到生产的整个软件开发生命周期。通过这个内省的过程,他们构建了一个工作流,使应用程序开发人员能够快速编写和发布软件。基本的工作流通常包括与持续集成系统相连接的源代码控制系统,以及将工件部署到生产环境中的方法。

随着使用工作流的应用程序开发人员数量的增长,平台的需求也在变化。不同的应用程序开发团队需要类似但不同的工作流,因此自助服务基础设施变得很重要。自助服务的常见平台工程目标包括CI/CD、警报和部署工作流。

除了自助服务,教育和协作也成为挑战。平台工程师发现,他们花越来越多的时间培训应用程序开发人员,让他们了解最佳实践和如何最好地使用平台。应用程序开发人员还发现他们依赖于其他应用程序开发人员团队,并期望平台工程团队为他们提供与不同团队高效协作的工具。

站点可靠性工程

站点可靠性工程师创建和改进系统,以自动可靠地运行应用程序。站点可靠性工程的概念起源于谷歌,详细记录在谷歌SRE手册中。谷歌公司负责技术运维的高级副总裁Ben Treynor Sloss将SRE描述为“当你要求软件工程师设计运维团队时发生的事情”。

SRE定义服务水平目标,并构建系统来帮助服务实现这些目标。这些系统发展成为一个平台和工作流程,包括监控、事件管理、消除单点故障、故障缓解等。

SRE文化的一个关键部分是将每一个故障视为可靠性系统中的一个故障。严格的事后分析对于识别故障的根本原因至关重要,并将纠正措施引入自动化系统以继续提高可靠性。

New Relic的SRE和平台工程

我们中的一个人(Bjorn Freeman-Benson)一直管理着New Relic的工程组织,直到2015年,它从少数客户发展到成千上万的客户,所有客户每秒都向云端发送数百万个请求。New Relic有独立的SRE和平台工程团队,他们遵循上述一般原则。

这些团队被分开建立的原因之一是,在这些角色中取得成功的人是不同的。虽然sre和平台工程师除了需要经典的编程技能外,还需要强大的系统工程技能,但这些角色决定了非常不同的性格类型。sre倾向于享受危机管理,并在排除故障时获得肾上腺素飙升。SRE经理能在巨大的压力下茁壮成长,擅长招募和管理想法相似的人。另一方面,平台工程师是更典型的软件工程师,他们更喜欢不间断地工作在大而复杂的问题上。平台工程经理更喜欢按照一致的节奏进行操作。

DevOps和GitOps

在过去的十年中,DevOps已经成为描述这些实践的一个流行术语。最近,GitOps也成为了一个流行术语。DevOps和GitOps与平台和SRE团队有什么关系?
DevOps和GitOps都是一套关于如何管理基础设施不同方面的松散编码原则。这两种哲学的核心原则——自动化、基础设施作为代码、软件工程的应用——非常相似。
DevOps是一场广泛的运动,它专注于消除开发和运维之间的传统竖井。随着时间的推移,基础设施自动化和考虑运维的工程应用等策略已经被广泛接受,成为更好地构建高可靠性应用程序的方法。
GitOps是一种应用程序交付方法。在GitOps中,声明性配置用于在任何时刻编码应用程序的所需状态。这个配置在版本化的源代码控制系统中作为唯一的真实数据源进行管理。这确保了可审计性、可再现性和配置的一致性。
简而言之:DevOps是SRE的一套指导原则,而GitOps是平台工程的一套指导原则。

解锁应用程序开发效率

站点可靠性工程和平台工程是优化构建云原生应用的工程组织的两个关键功能。SRE团队致力于为高可靠的应用程序交付基础架构,而平台工程团队致力于为快速的应用程序开发交付基础架构。这两个团队共同提高了应用程序开发团队的生产力。


参考:文章来源地址https://www.toymoban.com/news/detail-421726.html

  • EP 52: DevOps vs. SRE vs. Platform Engineering
  • Platform Engineering: what is it and why do you need it?

DevOps、SRE、平台工程的区别

到了这里,关于DevOps、SRE、平台工程的区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SRE 与 DevOps 的不同之处

    尽管网站可靠性工程 (SRE) 理念早在 2003 年就由 Google 的 Ben Treynor Sloss 提出,但其近年来却一直受到追捧。随着 DevOps 实践已经在许多组织中牢固确立,两者之间的冲突是否已经显现?SRE 只不过是一种过时的趋势吗?是 SRE 补充了 DevOps,或者是 DevOps 补充了 SRE?让我们来回顾一

    2024年02月04日
    浏览(40)
  • 从 DevOps 到平台工程:软件开发的新范式

    DevOps 是一种将开发和运营结合起来的方法,在应用规划、开发、交付和运营方面将人员、流程和技术结合起来。DevOps 使以前孤立的角色(如开发、IT运营、质量工程和安全)之间进行协调和合作。一直以来,DevOps 的采用都是以帮助企业更快地向客户提供价值,更好地适应市

    2024年02月05日
    浏览(71)
  • 【软件工程】项目管理与迭代开发:DevOps平台、敏捷协作平台与软件需求交付

    1、项目管理与软件需求交付 软件需求交付方法: DevOps:DevOps是一种软件开发和运维的方法论,它强调开发团队和运维团队之间的紧密协作和沟通,以实现快速、高效、可靠的软件交付。DevOps的核心是自动化,包括自动化测试、自动化部署、自动化监控等。 敏捷协作:敏捷协

    2024年01月17日
    浏览(49)
  • AIGC大模型的发展与SRE工程师职业发展的深度关联

    摘要:本技术博客将探讨AIGC大模型对于SRE工程师职业发展的影响,并收集和分析相关技术数据与行业数据,揭示二者之间的密切关系。 一、引言 近年来,人工智能(AI)和高性能计算(HPC)技术的不断发展,为大模型的研究与应用提供了强大的支持。其中,生成式预训练大

    2024年02月11日
    浏览(59)
  • 【DevOps】DevOps—基本概念

    维基百科定义: DevOps是一组过程、方法与系统的统称,用于促进 开发、技术运营 和 质量保障(QA) 部门之间的沟通、协作与整合。我理解DevOps是一种软件管理思维模式。 为什么会有DevOps呢,或者说软件开发领域是怎么样演变出DevOps这个概念的呢? 项目管理模式的演变是受

    2024年02月07日
    浏览(44)
  • DevOps—基本概念

    维基百科定义: DevOps是一组过程、方法与系统的统称,用于促进 开发、技术运营 和 质量保障(QA) 部门之间的沟通、协作与整合。我理解DevOps是一种软件管理思维模式。 为什么会有DevOps呢,或者说软件开发领域是怎么样演变出DevOps这个概念的呢? 项目管理模式的演变是受

    2023年04月13日
    浏览(55)
  • 想转行DevOps工程师?快来看看DevOps工程师的学习路径,少走弯路

    :::tips DevOps方法论的主要来源是Agile, Lean 和TOC, 独创的方法论是持续交付。 ::: DevOps 是一种软件开发方法,涉及持续开发,持续测试,持续集成,部署和监视。这一系列过程跨越了传统上孤立的开发和运营团队,DevOps 试图消除它们之间的障碍。 因此,DevOps 工程师基本上与 D

    2024年02月08日
    浏览(54)
  • DevOps工程师 - 面试手册

    DevOps工程师是一种专注于提高软件开发和运维团队协作、提高软件产品交付速度和质量的职位。这种角色要求具备跨领域的知识,以便在开发和运维过程中建立起稳定、可靠的基础设施和自动化流程。 负责设计、实施和维护CI/CD流程 配置和管理自动化部署、监控和报警工具

    2024年02月06日
    浏览(47)
  • DevOps VS 敏捷的区别是什么?

     原文链接:DevOps VS 敏捷_软件开发生产线 CodeArts_理论实践_DevOps概览 当我们面对敏捷和DevOps的时候,总会不可避免的思考下面这些问题: 敏捷是什么?DevOps是什么?两者有什么区别? 持续集成不是XP里面的么,怎么DevOps也有持续集成? 我们团队之前在做敏捷转型,现在又开

    2024年02月22日
    浏览(39)
  • devops运维平台汇总

    Spug是面向中小型企业设计的无 Agent的自动化运维平台,整合了主机管理、主机批量执行、主机在线终端、应用发布、任务计划、配置中心、监控、报警等一系列功能。 演示地址: 官网地址: 使用文档: 更新日志: 常见问题: 1,主机管理 2,批量执行 3,应用发布 4,任务计

    2024年02月05日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包