作品简介

运维发展到现在,与最初相比发生了巨大的变化。10多年的互联网发展,让国内的运维经历了快速的变革,开始和国外接轨,甚至在部分场景有单独的演化。DevOps和SRE作为运维领域的两个演化方向,在最近几年获得了很多关注,也有很多公司进行了相关的实践。与DevOps遍地开花的情况相比,SRE在国内的发展稍显低调。《SRE:Google运维解密》一书对国内外运维领域有很大冲击。本书作者作为一直工作在一线的运维工程师,理所当然地对SRE相关理念进行了实践,本书可以说是对SRE领域阶段性的实践总结。

本书主要对传统运维和SRE进行不同对比,让大家了解运维工程师在实践SRE理念时,关注的点和具体的实践经验。本书的前半部分更多地注重SRE在实际工作中对融入开发团队、监控建设、变更管理、容量管理、异常响应、稳定性治理、事故复盘、用户体验管理等方面的实践和落地。

在对SRE的工作有了一定了解后,本书会针对重要业务保障场景进行实战讲解。本书最后部分对SRE工作中涉及的一些技术进行了概述,以便有兴趣的同学了解SRE相关的技术点。

顾贤杰

网易运维专家、SRE团队Leader,10多年来一直聚焦互联网业务运维和稳定性建设。在互联网业务运维方面经验丰富,曾负责网易博客、相册、即时通信、支付、电商、账号系统、云音乐等众多产品的运维工作。在金融支付机房设计、高性能负载均衡建设、业务双机房改造部署、灾备建设等多个运维领域均有实践,设计过海量服务器运维工具平台,负责的产品服务了上亿的互联网用户。

目前的运维研究方向:海量服务器稳定性治理、基础设施即代码、混合云/云原生体系下的运维平台建设。

徐赟

网易资深运维开发工程师,运维开发团队技术Leader。参与并主导杭研运维体系建设,包括监控、流程、发布、审批等运维领域。持续探索运维自动化、智能化、一体化建设,为网易云音乐、网易传媒、网易支付等上百个产品提供高效稳定的运维服务。

颜中冠

网易技术经理、资深架构师,有16年的互联网一线研发和架构经验。曾负责亿级统一认证项目,主持网易帐号异地双机房建设,以及网易云计算业务中台搭建,负责多个对外亿级商业化项目研发。

作品目录

  • 内容简介
  • 前言
  • 第1章 关于SRE
  • 1.1 为什么会引入SRE
  • 1.2 DevOps和SRE对比
  • 1.2.1 DevOps的发展
  • 1.2.2 SRE的发展
  • 1.3 选择SRE
  • 1.4 SRE的未来
  • 第2章 SRE在组织内部的定位
  • 2.1 如何介入组织
  • 2.2 SRE工作着力点
  • 2.3 如何衡量工作
  • 2.4 贡献价值
  • 第3章 监控建设
  • 3.1 什么是好的监控服务
  • 3.1.1 稳定
  • 3.1.2 准确
  • 3.1.3 易用
  • 3.2 监控系统的设计逻辑分析
  • 3.2.1 数据生产
  • 3.2.2 数据上报
  • 3.2.3 数据处理
  • 3.2.4 数据存储
  • 3.2.5 数据使用
  • 3.3 典型监控应用场景
  • 3.3.1 系统监控
  • 3.3.2 应用监控
  • 3.3.3 终端监控
  • 3.3.4 秒级监控
  • 3.3.5 监控大盘
  • 3.3.6 链路监控
  • 3.4 报警治理
  • 3.5 容器监控
  • 3.6 监控智能化
  • 第4章 变更管理
  • 4.1 变更管理机制
  • 4.1.1 传统运维的变更管理
  • 4.1.2 DevOps的变更管理
  • 4.1.3 SRE的变更管理
  • 4.1.4 变更管理实践总结
  • 4.2 变更控制
  • 4.2.1 如何建设好的变更控制
  • 4.2.2 制定符合业务需求的变更控制机制
  • 4.3 稳定性和迭代速度的权衡
  • 4.4 变更风险控制
  • 4.5 总结
  • 第5章 异常响应
  • 5.1 异常的定义
  • 5.2 事故/事件定义
  • 5.2.1 区分事件和事故
  • 5.2.2 事故等级制度
  • 5.3 异常响应流程
  • 5.4 如何处理值班过程中的异常响应
  • 5.5 应急沟通机制
  • 5.6 关于线上问题的ROC
  • 第6章 服务稳定性治理
  • 6.1 SLI/SLO/SLA的制定和落地
  • 6.1.1 SLI的制定和应用
  • 6.1.2 SLO的计算和应用
  • 6.1.3 SLA的计算和应用
  • 6.2 故障预防
  • 6.3 抑制不可控因素
  • 6.4 故障演练
  • 6.4.1 故障梳理
  • 6.4.2 故障预案
  • 6.4.3 混浊工程
  • 6.5 故障自愈
  • 6.6 业务MTTR
  • 6.6.1 关于故障修复MTTR
  • 6.6.2 关于故障解决MTTR
  • 6.7 灾备建设
  • 6.8 总结
  • 第7章 事故复盘
  • 7.1 关于事故复盘
  • 7.1.1 事故复盘初级阶段
  • 7.1.2 事故复盘中级阶段
  • 7.1.3 事故复盘成熟阶段
  • 7.2 如何提升事故复盘质量
  • 7.2.1 事故复盘深度
  • 7.2.2 事故复盘报告
  • 7.3 事故分析的逻辑和原则
  • 7.4 事故责任的划分逻辑
  • 7.5 事后跟进
  • 7.6 基于事故/事件的学习
  • 第8章 容量管理
  • 8.1 容量管理的目标
  • 8.2 容量管理的方法和策略
  • 8.2.1 传统评估方法
  • 8.2.2 IT资源成本的构成
  • 8.2.3 容量水位的定义
  • 8.2.4 容量管理策略
  • 8.3 容量分析系统建设
  • 8.3.1 业务负载平台
  • 8.3.2 巡检管理平台
  • 8.3.3 监控系统和CMDB系统
  • 8.4 容量优化方式
  • 8.4.1 业务容量优化
  • 8.4.2 资源容量优化
  • 8.4.3 架构容量优化
  • 8.5 容量预案
  • 8.6 总结
  • 第9章 用户体验
  • 9.1 外部用户体验和内部用户体验
  • 9.1.1 外部用户体验
  • 9.1.2 内部用户体验
  • 9.2 影响用户体验的要素
  • 9.3 外部用户体验的改进策略
  • 9.4 内部用户体验的改进策略
  • 9.4.1 数据兼容性
  • 9.4.2 工作流程
  • 9.4.3 执行效率
  • 第10章 重要业务活动保障
  • 10.1 重要业务活动的资源准备
  • 10.1.1 容量规划
  • 10.1.2 资源交付规划
  • 10.1.3 技术优化
  • 10.2 参与运营活动评估
  • 10.3 重要业务活动稳定性预案
  • 10.4 重要业务活动准备阶段的工作重点
  • 10.5 重要业务活动的变更执行要求
  • 10.6 重要业务活动的运维人力
  • 10.7 重要业务活动的收尾
  • 第11章 运维操作基础
  • 11.1 网络基础
  • 11.1.1 ARP
  • 11.1.2 路由
  • 11.2 4/7层协议
  • 11.2.1 4层协议
  • 11.2.2 7层协议
  • 11.3 内核参数调优
  • 11.3.1 TCP网络堆栈内存
  • 11.3.2 TCP连接数优化
  • 11.3.3 TCP高并发优化
  • 11.3.4 网络参数额外调整项
  • 11.3.5 TCP拥堵算法
  • 11.4 常见命令行
  • 11.4.1 查看数据指标
  • 11.4.2 网络数据包分析
  • 11.5 配置管理工具
  • 11.5.1 Ansible
  • 11.5.2 CFEngine
  • 11.5.3 Chef
  • 11.5.4 Puppet
  • 11.5.5 Salt
  • 11.5.6 配置管理工具的汇总说明
  • 11.5.7 云环境下的配置管理工具演化
  • 11.6 基础设施即代码
  • 11.7 关于运维操作的未来
  • 第12章 基础组件运维
  • 12.1 负载均衡中间件
  • 12.1.1 算法逻辑的影响
  • 12.1.2 附加特性的作用
  • 12.1.3 负载均衡方案
  • 12.1.4 负载均衡总结
  • 12.2 消息队列中间件
  • 12.2.1 消息队列方案的技术决策
  • 12.2.2 消息队列的技术演化
  • 12.3 缓存中间件
  • 12.3.1 缓存中间件的技术关注点
  • 12.3.2 缓存中间件的选型策略
  • 12.3.3 缓存中间件的技术演化
  • 12.4 数据库
  • 12.4.1 SQL数据库技术的选择
  • 12.4.2 SQL数据库的配置注意事项
  • 12.4.3 NoSQL数据库技术的选择
  • 12.4.4 时序数据库技术
  • 12.5 组件运维
  • 第13章 云计算和容器
  • 13.1 云计算基础
  • 13.1.1 云计算平台运维
  • 13.1.2 云计算平台上的产品运维
  • 13.2 虚拟化
  • 13.3 容器
  • 13.4 云存储
  • 13.5 云网络
  • 13.6 混合云
  • 13.7 云原生
  • 13.7.1 云原生的需求情况
  • 13.7.2 云原生的发展
  • 13.7.3 云原生的展望
展开全部