全部商品分类

您现在的位置: 全部商品分类 > 电子电脑 > 计算机技术 > 计算机网络

SRE(Google运维解密)

  • 定价: ¥108
  • ISBN:9787121297267
  • 开 本:16开 平装
  •  
  • 折扣:
  • 出版社:电子工业
  • 页数:450页
  • 作者:编者:(美)贝特西...
  • 立即节省:
  • 2016-10-01 第1版
  • 2016-10-01 第1次印刷
我要买:
点击放图片

导语

  

内容提要

  

    大型软件系统生命周期的绝大部分都处于“使用”阶段,而非“设计”或“实现”阶段。那么为什么我们却总是认为软件工程应该首要关注设计和实现呢?在本书中,Google SRE的关键成员解释了他们是如何对软件进行生命周期的整体性关注的,以及为什么这样做能够帮助Google成功地构建、部署、监控和运维世界上现存最大的软件系统。通过阅读本书,读者可以学习到Google工程师在提高系统部署规模、改进可靠性和资源利用效率方面的指导思想与具体实践——这些都是可以立即直接应用的宝贵经验。任何一个想要创建、扩展大规模集成系统的人都应该阅读本书。本书针对如何构建一个可长期维护的系统提供了非常宝贵的实践经验。
    任何一个想要创建、扩展大规模集成系统的人都应该阅读本书。贝特西·拜尔编著的《SRE(Google运维解密)》针对如何构建一个可长期维护的系统提供了非常宝贵的实践经验。

目录

前言
序言
第Ⅰ部分  概览
第1章  介绍
  系统管理员模式
  Google 的解决之道:
  SRE 方法论
  确保长期关注研发工作
  在保障服务SLO 的前提下最大化迭代速度
  监控系统
  应急事件处理
  变更管理
  需求预测和容量规划
  资源部署
  效率与性能
  小结
第2章  Google 生产环境:SRE 视角
  硬件
  管理物理服务器的系统管理软件
  管理物理服务器
  存储
  网络
  其他系统软件
  分布式锁服务
  监控与警报系统
  软件基础设施
  研发环境
  莎士比亚搜索:一个示范服务
  用户请求的处理过程
  任务和数据的组织方式
第Ⅱ部分  指导思想
第3章  拥抱风险
  管理风险
  度量服务的风险
  服务的风险容忍度
  辨别消费者服务的风险容忍度
  基础设施服务的风险容忍度
  使用错误预算的目的
  错误预算的构建过程
  好处
第4章  服务质量目标
  服务质量术语
  指标
  目标
  协议
  指标在实践中的应用
  运维人员和最终用户各关心什么
  指标的收集
  汇总
  指标的标准化
  目标在实践中的应用
  目标的定义
  目标的选择
  控制手段
  SLO 可以建立用户预期
  协议在实践中的应用
第5章  减少琐事
  琐事的定义
  为什么琐事越少越好
  什么算作工程工作
  琐事繁多是不是一定不好
  小结
第6章  分布式系统的监控
  术语定义
  为什么要监控
  对监控系统设置合理预期
  现象与原因
  黑盒监控与白盒监控
  4 个黄金指标
  关于长尾问题
  度量指标时采用合适的精度
  简化,直到不能再简化
  将上述理念整合起来
  监控系统的长期维护
  Bigtable SRE :警报过多的案例
  Gmail :可预知的、可脚本化的人工干预
  长跑
  小结
第7章  Google 的自动化系统的演进
  自动化的价值
  一致性
  平台性
  修复速度更快
  行动速度更快
  节省时间
  自动化对Google SRE 的价值
  自动化的应用案例
  Google SRE 的自动化使用案例
  自动化分类的层次结构
  让自己脱离工作:自动化所有的东西
  舒缓疼痛:将自动化应用到集群上线中
  使用Prodtest 检测不一致情况
  幂等地解决不一致情况
  专业化倾向
  以服务为导向的集群上线流程
  Borg :仓库规模计算机的诞生
  可靠性是最基本的功能
  建议
第8章  发布工程
  发布工程师的角色
  发布工程哲学
  自服务模型
  追求速度
  密闭性
  强调策略和流程
  持续构建与部署
  构建
  分支
  测试
  打包
  Rapid 系统
  部署
  配置管理
  小结
  不仅仅只对Google 有用
  一开始就进行发布工程
第9章  简单化
  系统的稳定性与灵活性
  乏味是一种美德
  我绝对不放弃我的代码
  “负代码行”作为一个指标
  最小
  模块化
  发布的简单化
  小结
第Ⅲ部分  具体实践
第10章  基于时间序列数据进行有效报警
  Borgmon 的起源
  应用软件的监控埋点
  监控指标的收集
  时间序列数据的存储
  标签与向量
  Borg 规则计算
  报警
  监控系统的分片机制
  黑盒监控
  配置文件的维护
  十年之后
第11章  on-call 轮值
  介绍
  on-call 工程师的一天
  on-call 工作平衡
  数量上保持平衡
  质量上保持平衡
  补贴措施
  安全感
  避免运维压力过大
  运维压力过大
  奸诈的敌人—运维压力不够
  小结
第12章  有效的故障排查手段
  理论
  实践
  故障报告
  定位
  检查
  诊断
  测试和修复
  神奇的负面结果
  治愈
  案例分析
  使故障排查更简单
  小结
第13章  紧急事件响应
  当系统出现问题时怎么办
  测试导致的紧急事故
  细节
  响应
  事后总结
  变更部署带来的紧急事故
  细节
  事故响应
  事后总结
  流程导致的严重事故
  细节
  灾难响应
  事后总结
  所有的问题都有解决方案
  向过去学习,而不是重复它
  为事故保留记录
  提出那些大的,甚至不可能的问题:假如
  鼓励主动测试
  小结
第14章  紧急事故管理
  无流程管理的紧急事故
  对这次无流程管理的事故的剖析
  过于关注技术问题
  沟通不畅
  不请自来
  紧急事故的流程管理要素
  嵌套式职责分离
  控制中心
  实时事故状态文档
  明确公开的职责交接
  一次流程管理良好的事故
  什么时候对外宣布事故
  小结
第15章  事后总结:从失败中学习
  Google 的事后总结哲学
  协作和知识共享
  建立事后总结文化
  小结以及不断优化
第16章  跟踪故障
  Escala
  Outala
  聚合
  加标签
  分析
  未预料到的好处
第17章  测试可靠性
  软件测试的类型
  传统测试
  生产测试
  创造一个构建和测试环境
  大规模测试
  测试大规模使用的工具
  针对灾难的测试
  对速度的渴求
  发布到生产环境
  允许测试失败
  集成
  生产环境探针
  小结
第18章  SRE 部门中的软件工程实践
  为什么软件工程项目对SRE 很重要
  Auxon 案例分析:项目背景和要解决的问题
  传统的容量规划方法
  解决方案:基于意图的容量规划
  基于意图的容量规划
  表达产品意图的先导条件
  Auxon 简介
  需求和实现:成功和不足
  提升了解程度,推进采用率
  团队内部组成
  在SRE 团队中培养软件工程风气
  在SRE 团队中建立起软件工程氛围:招聘与开发时间
  做到这一点
  小结
第19章  前端服务器的负载均衡
  有时候硬件并不能解决问题
  使用DNS 进行负载均衡
  负载均衡:虚?
第20章  数据中心内部的负载均衡系统
  理想情况
  识别异常任务:流速控制和跛脚鸭任务
  异常任务的简单应对办法:流速控制
  一个可靠的识别异常任务的方法:跛脚鸭状态
  利用划分子集限制连接池大小
  选择合适的子集
  子集选择算法一:随机选择
  子集选择算法二:确定性算法
  负载均衡策略
  简单轮询算法
  最闲轮询策略
  加权轮询策略
第21章  应对过载
  QPS 陷阱
  给每个用户设置限制
  客户端侧的节流机制
  重要性
  资源利用率信号
  处理过载错误
  决定何时重试
  连接造成的负载
  小结
第22章  处理连锁故障
  连锁故障产生的原因和如何从设计上避免
  服务器过载
  资源耗尽
  服务不可用
  防止软件服务器过载
  队列管理
  流量抛弃和优雅降级
  重试
  请求延迟和截止时间
  慢启动和冷缓存
  保持调用栈永远向下
  连锁故障的触发条件
  进程崩溃
  进程更新
  新的发布
  自然增长
  计划中或计划外的不可用
  连锁故障的测试
  测试直到出现故障,还要继续测试
  测试最常用的客户端
  测试非关键性后端
  解决连锁故障的立即步骤
  增加资源
  停止健康检查导致的任务死亡
  重启软件服务器
  丢弃流量
  进入降级模式
  消除批处理负载
  消除有害的流量
  小结
第23章  管理关键状态:利用分布式共识来提高可靠性
  使用共识系统的动力:分布式系统协调失败
  案例1 :脑裂问题
  案例2 :需要人工干预的灾备切换
  案例3 :有问题的小组成员算法
  分布式共识是如何工作的
  Paxos 概要:协议示例
  分布式共识的系统架构模式
  可靠的复制状态机
  可靠的复制数据存储和配置存储
  使用领头人选举机制实现高可用的处理系统
  分布式协调和锁服务
  可靠的分布式队列和消息传递
  分布式共识系统的性能问题
  复合式Paxos :消息流过程详解
  应对大量的读操作
  法定租约
  分布式共识系统的性能与网络延迟
  快速Paxos 协议:性能优化
  稳定的领头人机制
  批处理
  磁盘访问
  分布式共识系统的部署
  副本的数量
  副本的位置
  容量规划和负载均衡
  对分布式共识系统的监控
  小结
第24章  分布式周期性任务系统
  C
  介绍
  可靠性
  Cron 任务和幂等性
  大规模Cron 系统
  对基础设施的扩展
  对需求的扩展
  Google Cron 系统的构建过程
  跟踪Cron 任务的状态
  Paxos 协议的使用
  领头人角色和追随者角色
  保存状态
  运维大型Cron 系统
  小结
第25章  数据处理流水线
  流水线设计模式的起源
  简单流水线设计模式与大数据
  周期性流水线模式的挑战
  工作分发不均造成的问题
  分布式环境中周期性数据流水线的缺点
  监控周期性流水线的问题
  惊群效应
  摩尔负载模式
  Google Workflow 简介
  Workflow 是模型—视图—控制器(MVC)模式
  Workflow 中的执行阶段
  Workflow 正确性保障
  保障业务的持续性
  小结
第26章  数据完整性:读写一致
第27章  可靠地进行产品的大规模发布
第Ⅳ部分  管理
第28章  迅速培养SRE 加入on-c
第29章  处理中断性任务
第30章  通过嵌入SRE 的方式帮助团队从运维过载中恢复
第 31章  SRE 与其他团队的沟通与协作
第32章  SRE 参与模式的演进历程
第Ⅴ部分  结束语
第33章  其他行业的实践经验
第34章  结语
附录A  系统可用性
附录B  生产环境运维过程中的最佳实践
附录C  事故状态文档示范
附录D  事后总结示范
附录E  发布协调检查列表
附录F  生产环境会议记录示范
参考文献
索引