SRE网站可靠性工程师
SRE网站可靠性工程师
SRE需要做什么?
一般:
- 故障模式,尤其是SPOF(单点故障)。消除SPOFs是你作为SRE最大的挑战和乐趣。
- 基础设施组件,从应用程序到硬件(服务器、交换机、路由器、互联网连接、防火墙、isp、互联网路由(BGP)、IPS系统等)。
应用程序级别:
- 应用程序负载测试、内存泄漏和断点。
服务器级别:
- 高可用性和系统故障转移。如何使系统优雅地失败,而不会丢失事务并从最终用户的角度保持有状态。
- 备份系统。
- 硬盘的可靠性和故障转移(包括RAID功能)。在数据中心级别,应该考虑灾难恢复(确保故障转移到不同的位置)。
安全与管理:
- 了解不同类型的网络安全攻击。
- sla——把最好的留到最后,sla(service level agreements服务水平协议)是SRE工作中最重要的方面之一。设置、监视和执行sla将占用大量工作。
SRE核心组件
SRE的以下5个理念可以通过事实数据和洞察力带来更好的客户体验。可观察性和实用的度量标准是现SRE促进服务弹性和基础设施正常运行的最佳方法——满足客户的期望。
1)可用性
SRE工程师将负责制定和满足服务水平的目标、协议和指标(SLOs、sla和SLIs)。基于底层应用程序和基础设施的成熟度,以及整个团队的结构和可靠性实践的支持,SREs可以评估合理的指标,以量化客户的正常运行时间和可用性。什么样的可用性水平是合理的,可以假定您可以持续地维护,以及什么会让客户和潜在客户满意,从而带来更多的业务?
2)性能
当然,如果站点可靠性工程师要对服务可用性负责,那么他们也要对性能负责。在某种意义上,性能是看待可用性的另一种方式。在工程团队看来,经历了某种程度的延迟或另一种类型的性能下降的客户,很可能正在经历停机。如果服务不是高性能和可用的,那么它几乎是不可用的。SREs负责为这些生产系统带来见解和行动,以确保开发人员和IT团队快速修复问题,改善客户体验,并使应用程序和基础设施随着时间的推移更具弹性。
3)监控
为了确保性能和可用性,SREs需要知道在其应用程序和基础设施中监视和警告什么。可观察的服务大大提高了开发和发布团队的效率,这自然会提高面向客户的服务的正常运行时间和性能。SREs同时使用白盒和黑箱监控,以及仪表板和其他可视化工具来确保开发,组织中任何地方的IT和安全团队都能更好地了解他们的应用程序和基础设施的健康状况。
4)事件反应
SREs的随叫随到管理和事件响应,通常在不同的组织之间是不同的。虽然站点可靠性工程师并不总是需要随叫随到,但他们至少应该对事件后的评审做出贡献,并在高水平上了解事件响应过程。系统可靠性在很大程度上取决于DevOps和IT团队在处理生产中的事故和中断时的效率。站点可靠性工程师需要对他们的事件响应团队的成功负责——这通常意味着他们需要成为随叫随到过程的一部分。
5)协作沟通
SREs需要确保开发人员和IT运营团队拥有他们需要的资源,以了解他们的系统,知道什么地方出了问题,并快速响应问题。通过事件后的协作评审过程、有用的度量标准和指示板,以及对组织的CI/CD过程的全面改进,站点可靠性工程师在DevOps和IT效率方面有很大的优势。
google招聘SRE的要求
最低学历:
- 计算机科学学士学位,软件/系统工程相关技术领域,或同等的实践经验。
- 至少使用以下语言之一进行编程:C、c++、Java、Python或Go。
- 熟悉算法和数据结构。
优先条件:
- 具有设计、分析和故障排除大型分布式系统的专业知识。
- 具有调试、优化代码和自动化日常任务的能力。
- 系统解决问题的方法,加上有效的沟通技巧和驱动力。
- 了解Unix/Linux操作系统。
参考
Google’s SRE Book
Google’s Site Reliability Workbook PDF
Google Cloud Platform Podcast
Splunk’s Beginner’s Guide to Observability
SRE, Golden Signals and Happier Customers (webinar)
Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (book)
The Complete Guide to Post-Incident Reviews
Reducing MTTD for High-Severity Incidents (guide)
The Unicorn Project (book)
SRE网站可靠性工程师的更多相关文章
- .NET 技术栈 思维导图
背景介绍 根据网上招聘网站的一些.NET技能需求,画了一个图,便于在自修和学习的过程当中有一个方向. 技能栈 Web front-end o 框架技术 ▣ Vue ▣ Bootstrap ▣ LayU ...
- Google 和 Facebook 如何大规模处理 IT 事件管理 —— 2016 SRE 大会之我见
[编者按]本文作者为 Maria Arbisman,主要介绍 Google 与 Facebook 两大巨头是如何大规模处理 IT 事件管理.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 2 ...
- 国外的SRE都是干啥工作的?薪资如何?
本文翻译自:https://www.flagship.io/glossary/site-reliability-engineer/,意译~ 众所周知,开发和 IT 运营之间因为屁股决定脑袋,存在巨大的 ...
- 译:Google的大规模集群管理工具Borg(一)------ 用户视角的Borg特性
概述 Google的Borg系统是一个集群管理工具,在它上面运行着成千上万的job,这些job来自许许多多不同的应用,并且跨越多个集群,而每个集群又由大量的机器构成. Borg通过组合准入控制,高效的 ...
- 大规模集群管理工具Borg
Google的大规模集群管理工具Borg 概述 Google的Borg系统是一个集群管理工具,在它上面运行着成千上万的job,这些job来自许许多多不同的应用,并且跨越多个集群,而每个集群又由大量的机 ...
- CNCF CloudNative Landscape
cncf landscape CNCF Cloud Native Interactive Landscape 1. App Definition and Development 1. Database ...
- 2019年微服务5大趋势,你pick哪个?
2018年对于微服务来说是非常重要的一年,这一年Service Mesh开始崭露头角,解决服务间复杂的通信问题,这一年很多国内互联网公司已经有了较为成熟的微服务实践案例,网易云主办的微服务实践沙龙中也 ...
- 从工程文化和运维理念理解Netflix
http://www.infoq.com/cn/news/2018/01/netflix-engineering-culture 在技术圈儿,Netflix 是一家非常有特色的互联网公司.他们信奉“自 ...
- linux性能不好怎么办?对着清单撸一遍
性能不好怎么办?对着清单撸一遍 Brendan Gregg是Netflix的资深性能架构师,著名性能调优专家.著有<性能之巅:洞悉系统.企业与云计算>)一书,可以说是性能调优领域的集大成之 ...
- CNCF LandScape Summary
CNCF Cloud Native Interactive Landscape 1. App Definition and Development 1. Database Vitess:itess i ...
随机推荐
- SpringBoot启动报错:HikariPool-1 - Exception during pool initialization.
不说废话,直接上错误信息: 2020-06-23 10:48:19.899 INFO 10608 --- [ main] cn.wps.ep.account.sync.Application : St ...
- C++:Boost库
今日安装一个PSI库时,需要boost库,在此认识一下boost库,转载:macOS 中Boost的安装和使用 介绍 Boost是一个功能强大,构造精良,跨越平台,代码开源,完全免费的C++程序库. ...
- moectf2023 web wp
gas!gas!gas! 直接跑脚本 import requests session=requests.Session() url="http://127.0.0.1:14447" ...
- 【1】JobManager启动
一.Flink底层通信技术 Akka + Netty Akka:它是基于协程的,基于scala的偏函数 Netty:相比更加基础一点,可以为不同的应用层通信协议(RPC,FTP,HTTP等)提供支持 ...
- mybatis之配置优化
属性优化 properties 外部配置文件[db.properties] driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/m ...
- hibernate的锁机制
概述 hibernate 可以通过加锁解决并发问题. hibernate 的锁分为两种:乐观锁和悲观锁. 乐观锁(Optimistic lock):每次访问数据时,都会乐观的认为其它事务此时肯定不会同 ...
- JavaScript 之 高级程序设计 基础篇 (一)
导读 此篇文章为作者拜读JavaScrpit 第四版(红宝石)的笔记内容.适用于有经验的程序员阅读:作者 java开发出身.在之前前后端不分离的时代 使用esayUI JQuery的时代 经常写 js ...
- 海康SDK报错Structure.getFieldOrder()
就是你调用的这个结构体以及其引用的其他结构体,可能没有getFieldOrder()的方法,你只要按照顺序把他填上去就好了.比如 public static class NET_DVR_TIME ex ...
- 八米云-N1盒子、S905系列机顶盒等设备-小白保姆式超详细刷机教程
线刷准备 这里以魔百盒CM211-1为例,本次刷机用到的零碎工具比较多,不过都是常见刚需设备,大家可以按照清单核对一下. 目前只支持S905 L3.L3a.L2 系列的各种盒子 机顶盒本体 电脑一台 ...
- JUC相关知识点总结
Java JUC(java.util.concurrent)是Java并发编程的核心工具包,提供了丰富的并发工具类和框架.以下是JUC的主要知识点,按难易程度分类,供你参考: 1. 基础概念与工具类 ...