当前位置: 首页 > article >正文

SRE体系建设指南

sre体系建设指南

一、团队建设

指导思想

拥抱风险:容忍风险、度量风险、管理风险、研究当前高频故障原因和主要风险;演进式、SLO目标内允许故障

工作准则:专注改进设计、专注研发工作;把可靠性工作纳入软件各阶段、简单化、减少琐事

工作方法

Google Sre具体方法:紧急响应、有效告警、Oncall轮值;事后总结、故障管理、有效排障;应对过载、测试可靠性、故障跟踪;可靠性管理、处理连锁故障

Mikey金字塔:容量规划、开发工作、用户体验、监控、事故响应、事后回顾、测试与发布;沟通与协作

工作目标

确定可靠性工作对象:强依赖服务、核心系统/服务、核心业务

目标与度量:确定合理目标、服务质量目标、SLI/SLO/SLA、目标一致性(上下游强依赖关系的服务目标对齐)、Error Budget错误预算

代码质量:回归策略、测试有效、研发过程、性能压力测试、联调测试

软件可靠性-长期关注研发工作

业务架构:强弱依赖、核心链路、用户旅程、资损防控、攻防演练;数据对账(隔天对账、实时对账)

应用架构:微服务架构、分层架构、可熔断可降级、调用方式

系统架构:资源隔离、服务隔离、业务隔离

基础设施架构:双活、主备冗余、反亲和、流量调度、两地三中心

标准规范

优秀实践、标准作业流程SOP、组织红线、通用标准

SRE文化

自驱、精进、担当、开放、协作、共享(团队文化关键字);业界倡导/宣言(研发效能宣言、敏捷宣言、DevOps八荣八耻)

人才培养

岗位互备、技术分享、学习小组、新人辅导

二、工具链打造

可观测性

包含内容:聚合度量指标、链路追踪(StackTrace、RUM、NPM、APM)、事件日志

优秀实践:黄金指标/北极星指标(业务核心指标识别)、监控大盘、灭火图

能力要求:故障发现、定界与定位、故障诊断

全链路压测

流量回放压测、单链路压测、单机或单应用压测

故障修复

故障报告、协同平台、预案平台

持续交付

持续测试/验证、持续部署、持续集成、持续构建

混沌工程

Chaosmesh、ChaosBlade

Aiops

舆情监控、自动决策、根因推荐、无阈值告警、智能告警

三、工作流程

可靠性变更&发布

变更管理:自动化发布、有计划地发布、变更记录、变更通知、变更审批、变更终止、变更回滚

发布策略:灰度发布、蓝绿部署、金丝雀部署、A/B Test

变更要求:可灰度、可监控、可终止、可回滚

巡检:系统巡检、功能巡检、人工巡检

立体式监控覆盖:APM、NPM、RUM、应用日志、服务端指标、服务端调用链路

拨测:链路质量:连通性、路由、时延、丢包、DNS;服务质量:页面性能、API性能、文件下载

通知:报警、巡检通知、大盘分析

应急事件通知

开关预案:风险盘点、预案梳理、预演推演、预案制定、预案演练

故障干预:隔离、回滚、降级、熔断、重启

事故管理

应急协同:故障通知与升级、故障追踪、应急响应机制(WarRoom/电话会议、现场指挥、职责分工、进度信息披露)

故障治理

故障复盘:原则:五条归零(过程清楚、机理清楚、影响清楚、整改到位、举一反三);复盘过程(回顾、分析、总结、行动)流程闭环

故障判定:故障定级、故障定性、故障定责(故障报告、故障评审、定期回顾)

容量管理

资源部署:混合云、多云、Buffer池

资源评估:性能压测、历史运营数据挖掘、流量预估(节假日、重大运营活动)

弹性调度:无状态化、自动扩缩容

效率与性能

性能分析与优化、在质量达标情况下效率优先

持续运维/持续运营

稳定性运营报告:巡检日报、运营周报、运营月报、季度/年度总结

重大活动保障:重保活动评估、容量评估/工作负载评估、资源保障、安全防护、风险梳理及预案、后勤保障、OnCall值守

接手运维新工作:全新项目启动、中途接管现有项目、团队内新人接手运维、重点项目-准备SRE覆盖

必备知识库

云原生技术

云原生DevOps:CI持续集成、CD持续部署、容器编排、弹性伸缩

云原生架构:Service Mesh、MicroServices、IAC、Serverless

容器技术:容器网络、容器存储、资源隔离(CPU、内存、磁盘、网络)

公有云:常用云产品、多云差异、多云协同、云工具链建设(基于公有云提供的API)

应用软件高可用

架构模式:SOA、MicroService、ServiceMesh

微服务通信:通信协议、异步通信、分布式事务

集群容错设计:容错设计、过载保护、超时重试

服务治理:服务发现、负载均衡

应用软件框架与可靠性

开源框架:Springcloud、MVC、GIN、Dubbo

数据库与中间库可靠性

数据库:关系型数据库、NOSQL、中间件(队列、缓存)

软件基础设施可靠性

发布流水线、研发环境与可靠性、数据流水线、周期任务系统、分布式锁系统、共识系统、DNS、负载均衡、监控与报警系统、统一元数据(资源元数据、业务元数据)

Linux技术与可靠性

linux基础操作、系统及应用性能调优、脚本编程能力、常见高可用技术和方案、系统及应用安全加固、Linux内核调优

服务器可靠性

计算服务器、存储(对象存储、文件存储、块存储)、网络

网络可靠性

核心网、接入网、专线网、骨干网、无线网

数据中心可靠性

网络、电力、制冷、消防、IT设备

运维安全与可靠性

DevSecOps、代码静态扫描、入侵检测、AntiDDOS


http://www.kler.cn/news/149646.html

相关文章:

  • 代理模式-C++实现
  • Python 装饰器与偏函数
  • 又有两大巨头官宣加入鸿蒙, 鸿蒙已成, 华为余承东说得没错
  • 五、cookie、session、token、localstroage、sessionStroage区别
  • 探索低代码之路——JNPF
  • 哪里可了解低代码数据可视化开发平台?
  • 多线程,线程池,线程的创建,线程池的参数
  • 使用mock.js模拟数据
  • 【JavaEE初阶】 HTTP响应报文
  • Linux常见指令基础知识
  • C#中集合和索引器
  • temu的产品发布后在哪里显示
  • Linux:配置Ubuntu系统的镜像软件下载地址
  • java springboot中使用 AOP监听方法执行周期
  • 宏基因组分析项目又双叒叕出新了!期盼已久的铁循环来了!!
  • HTTP协议发展
  • 虚幻学习笔记3—UI跟随弹窗
  • Kafka生产者发送消息的流程
  • 电商盛行的今天,这个平台热度还在持续增高!
  • C语言:输入3个整数,按由小到大的顺序输出(指针)
  • 数字化时代的政务服务:构建便捷高效的线上政务大厅
  • Centos7使用rpm安装mysql 5.7.43
  • 【matlab程序】matlab画台风符号和实例应用
  • Web UI自动化测试框架
  • 1.5 C语言之字符输入输出
  • 初始本地仓库推送到远程仓库-git
  • 如何在自定义数据集上训练 YOLOv8 实例分割模型
  • Spring的@Feign源码分析
  • 【解决】HDFS JournalNode启动慢问题排查
  • SpringCloud之服务网关Gateway组件使用——详解