SRE 全称是 Site Reliability Engineering,即网站稳定性工程师。最早是由 Google 提出,并且在其工程实践中发扬光大。这个团队设立目的是帮助 Google 生产环境服务运行更稳定、健壮、可靠。不同于中小型规模公司,Google服务于十几亿用户服务,短暂服务不可用会带来致命后果。因此 Google 走在了时代最前面,SRE 产生了。
Google的官方对于SRE的介绍:
Keep the site up
Work at a Large Scale
Balance competing demands
可以看到SRE的 关键词是“高扩展性”和“高可用性”。SRE 职能可以概括为以下:
DevOps 和 SRE 都会关心应用生命周期,特别是生命周期里面中变更和故障。 但是 DevOps 工作内容是主要为开发链路服务,一个 DevOps 团队 通常会提供一串工具链包括:开发工具、版本管理工具、CI 持续交付工具、CD 持续发布工具、报警工具、故障处理。 而 SRE 团队则关注更为关注变更、故障、性能、容量相关问题,会涉及具体业务,产出工具链会有:容量测量工具、Logging 日志工具、Tracing 调用链路跟踪工具、Metrics 性能度量工具、监控报警工具等。
1.SRE 和Devops都需要较强的运维技能和开发技能。
2.SRE 的首要工作任务是保证 SLA更偏向于运维;而DevOps是开发+运维,更强调开发。
3.SRE 工程师在复杂系统中,可扩展设计、高并发设计、高可用设计以及定位排查复杂问题的能力要由于Devops工程师