SRE工程师,你我运维人的下一个Title
sre工程师_什么是SRE? 现场可靠性工程师的重要作用release/blogv2/dist/pc/img/translate.png cxu0262 2020-07-03 09:58:30 release/blogv2/dist/pc/img/articleReadEyes.png 182 release/blogv2/dist/pc/img/tobarCollect.png 收藏
文章标签: java 大数据 人工智能 编程语言 项目管理
版权
sre工程师 随着世界在线迁移,网站,云应用程序和云基础设施的可靠性已成为至关重要的业务,从电子商务运营到全球银行再到搜索引擎,这一切应运而生。 我们管理系统及其工作负载的方式已经改变。 如今,我们很少考虑使用珍贵的,高接触性,高性能的服务器,而是通过虚拟化将大量的商用服务器架设在一起,分布式软件架构可防止服务器中断而导致停机。 重点已从硬件转移到软件定义的基础结构,从不一致和容易出错的手动过程转移到一致,可靠和可重复的自动化任务。
[ 也在InfoWorld上:站点可靠性工程遇上发展难题的地方 ] 站点可靠性工程是维护该可编程基础结构并最大化其上运行的工作负载的可用性的一种做法。 站点可靠性工程师(SRE)的职位起源于Google的大厅,在千年之交,Google希望重新定义软件开发人员和运营人员之间的关系,并帮助他们共同构建坚固,灵活的系统,不断改进和自动化是核心原则。 什么是SRE? 从根本上讲,SRE将软件工程原理带入基础架构和运营问题,其北极星目标是创建高度可扩展且可靠的系统。 Google的工程副总裁兼SRE的教父Ben Treynor常说:“从根本上讲,这是当您要求软件工程师设计操作功能时发生的事情。” SRE职责中的主要职责是建立服务水平阈值,通常表现为服务水平目标(SLO),这有助于告知发布是否已获批准。 圣杯永远是神圣的“五个九”或正常运行时间的99.999%。 正常运行时间越长,绳索开发人员发布新产品的时间就越多,SRE获得的睡眠就越多,从而导致功能之间的互利关系,与过去的开发人员和运营拮据相去甚远。
SRE功能通常将根据一组关键可靠性指标进行衡量,这些指标包括:系统性能,可用性,延迟,效率,监视,容量规划和紧急响应。
[ 同样在InfoWorld上:应用程序监视:哪些devops可以做得更好 ] SRE的关键工作职责 任何好的SRE都会特别着迷于一件事:自动化。
正如监控软件供应商New Relic的SRE的Jason Qualman在博客文章中指出的那样:“许多角色都在思考人们在做的效率低下和耗时的事情,并尽快制止他们。 您不是在费劲地从事手工工作,而是在说:“我现在要花时间使此自动化,并阻止其他任何人去做这件痛苦的事情。” SRE角色的另一个关键要素是所谓的“发布工程”,它涉及定义最佳实践,以确保软件发布一致且可重复。 “发布工程师对源代码管理,编译器,构建配置语言,自动构建工具,程序包管理器和安装程序有扎实的(如果不是专家的话)理解。 他们的技能包括对多个领域的深入了解:开发,配置管理,测试集成,系统管理和客户支持,” Google技术项目经理Dinah McNutt在开创性的《 站点可靠性工程》 (由O'Reilly于2016年,由Google员工Jennifer Petoff,Niall Richard Murphy,Chris Jones和Betsy Beyer撰写。 然后是角色的响应部分,其中包括警报,通话中和故障排除,以及紧急情况,事件响应和验尸。
从本质上讲,重要的是,SRE知道如何最好地监视系统并在出现问题时做出React,不断编写和重写响应手册,以减少修复可能发生的故障的时间。 在Google,这涉及记录事件,了解所有根本原因并实施未来的预防措施。 Google员工John Lunney和Sue Lueder在《 网站可靠性工程》一书的贡献一章中写道:“撰写事后报酬不是惩罚,而是整个公司的学习机会。” [ 同样在InfoWorld上:在IT运营中应用敏捷方法的3个步骤 ] SRE与Devops工程师 我知道你在想什么 所有这些听起来都非常像devop,但是在术语方面,SRE职位实际上比devop工程师早了大约五年。 两者都基于相似的原则,但是区别既微妙又重要。 两种工作方式都涉及打破开发人员和运营人员之间的障碍,并且都旨在提高开发人员团队的速度,同时保持这些服务的核心弹性。 关键的区别是,devops工程师倾向于专注于支持持续交付和开发人员速度,而SRE在整个软件生命周期中负责可靠性和自动化,重点是成功部署和监视发布并保持软件定义的基础架构正常运转。 SRE在更广泛的工程团队中具有不可或缺的功能:确保在桌子上有一位专门负责构建稳定系统的专家。 正如The Devops Institute的Jayne Groll所说:“ Devops专注于工程持续交付到部署点; SRE致力于在客户消费方面进行工程连续运营。” Google SRE的历史 将SRE原理追溯到2000年代初期在Google的起源,为该学科提供了关键的对象课程。 “当我来到Google时,我很幸运地成为了一个团队的一部分,这个团队的一部分由软件工程师组成,他们倾向于使用软件来解决历史上手工解决的问题。 因此,当是时候成立一个正式的团队来进行这项运营工作时,自然而然地采取“一切都可以被视为软件问题”的方法,并以此来运行,” Ben Treynor在接受Google 内部博客采访时表示。 “因此,SRE从根本上从事的工作是由运营团队来完成的,但是他们使用的是具有软件专业知识的工程师,并且基于这些工程师天生就具备自动化并可以代替人工的能力这一事实, ” Treynor补充道。 Google还非常认真地考虑如何组建SRE团队。 所有Google SRE必须是Google软件工程师或“非常接近Google软件工程资格的候选人”。 他们还必须具有基础架构管理技能,最常见的是“ Unix系统内部和网络(第1层到第3层)专业知识”。 各个公司的SRE资格仍然会有所不同,但是就基本原则而言,Google的方法是一个坚实的起点。 详细信息将取决于组织已经采用的业务需求,已建立的流程和技术堆栈。
[ 也在InfoWorld上:dataops如何改善数据,分析和机器学习 ] SRE职位描述和薪资 SRE通常会花费大约50%的时间来执行传统的操作功能,例如待命和跳入以解决问题。 其余的50%专注于开发软件,以使基础系统随着时间的流逝而变得更具弹性,自动化和自我修复。 这就是为什么该职位需要将软件工程知识和操作技能紧密结合在一起的原因。 良好的SRE会井井有条,在压力下保持冷静,并解决问题。 SRE经理负责团队的绩效,战略和优化。 但是,对于那些不存在SRE角色的组织呢? 在O'Reilly报告中,“ 什么是SRE? ”来自LinkedIn的Kurt Andersen和来自Split(发行管理软件供应商)的Craig Sebenik建议采用“草根”方法。 他们建议找到一个“开发团队,其动机是在那里改变和实施一个小型SRE团队(或个人)。 随着时间的流逝,您可以将成功作为其他团队的榜样。” 根据工作网站Indeed ,SRE的平均年薪在美国约为130,000美元,在英国约为76,000英镑。 SRE资源 从DevOps Institute的认证到O'Reilly , Microsoft和Google的书籍和在线资源,都有丰富的资源来培养SRE技能。 詹尼弗·佩托夫(Jennifer Petoff),尼尔·理查·墨菲(Niall Richard Murphy),克里斯·琼斯(Chris Jones)和贝茜·贝耶(Betsy Beyer)所著的上述550页庞然大物站点可靠性工程是该主题的热门书籍,该书也于2016年出版。该书也可从Google免费在线获得 。 其他有关该主题的最新书籍包括Jennifer Petoff的培训场所可靠性工程师 ,JC van Winkel和Preston Yoshioka。 什么是SRE? 由Kurt Andersen和Craig Sebenik撰写; David N. Blank-Edelman 寻求SRE ,以及Betsy Beyer,Niall Richard Murphy,David K. Rensin,Kent Kawahara和Stephen Thorne的《站点可靠性工作手册》 。 O'Reilly还拥有一个有关该主题的在线资产,视频和电子书的综合库,该库由前Google网站可靠性工程师Liz Fong-Jones精心策划在此SRE Essentials播放列表中 。 在线学习大师Coursera提供了几门课程,包括流行的“ 网站可靠性工程: Google Cloud Training中的测量和管理可靠性” 。 该课程也可以从Pluralsight获得,还有Elton Stoneman撰写的入门课程“ 站点可靠性工程(SRE):全局”。 Linux Foundation提供了一个名为DevOps和SRE基础知识:实现持续交付的自指导课程。 位于英国的水母培训为SRE Foundation(SREF)提供各种为期两天的私人培训课程选项。
页:
[1]