SRE Google运维解密(中文版)_第1页
SRE Google运维解密(中文版)_第2页
SRE Google运维解密(中文版)_第3页
SRE Google运维解密(中文版)_第4页
SRE Google运维解密(中文版)_第5页
已阅读5页,还剩368页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论