Google SRE 讀書筆記 扒一扒SRE用的那些工具


寫在前面

最近花了一點時間閱讀了《SRE Goolge運維解密》這本書,對於書的內容大家可以看看豆瓣上的介紹。總體而言,這本書是首次比較系統的披露Google內部SRE運作的一些指導思想、實踐以及相關的問題,對於我們運維乃至開發人員都有一定的借鑒意義。

書中的一些思想也令我印象深刻,例如SRE工程師要保證投入50%的時間在項目上、錯誤預算、命運之輪、事故總結等等,對於從業者有很大的啟發。書中提到了很多思想,也提到了很多工具,我想不同的單位有不同的文化、制度背景,這種指導思想未必能夠執行,但是書中提到的工具,卻有被其他人利用的可能。因此,我就整理了書中提到的一些工具以及搜索是否有對應的開源工程,整理成下面的列表供大家參考。

如果大家發現有不全的,或者對於某個工具希望深入討論的,歡迎給我留言。

Google 技術棧

功能介紹 產品 對標的開源產品 備注
分布式共識系統、分布式鎖服務 Chubby 書中描述為強一致性存儲系統 ZooKeeper、Consul
監控服務 Borgmon Prometheus、Riemann、Heka、Bosun
Photon
分布式周期性任務系統 Cron
任務分發系統,集群管理系統 Borg
分布式文件系統 GFS
Mesos
管理報警響應及升級規則 Escalator
故障跟蹤工具(被動收集監控系統發出的所有報警信息,同時提供標記、分組和數據分析功能) Outalator
數據流水線 MapReduce、Flume
大規模數據處理 Workflow Spanner ?
Incident Command System
構建系統 Bazel
分布式文件系統 GFS

Borg 調度服務(2003),開源產品 Kubernetes
Borg Name Service BNS 名稱解析系統
Bigtable
Blaze/Bazel 構建
Rapid 發布
Midas Pacakge Management MPM 打包
Sisyphus 發布自動化框架
Chubby 強一致性存儲系統
Prober 端到端檢測(黑盒監控 Black Box Monitoring)
Protocol Buffer (Protobuf)
Alert Manager 報警管理服務
Dapper 分布式組件跟蹤工具
Incident Command System 應急事件管理
IRC機器人
Dagger 依賴注入(Dependency Injection)工具
Protocol Buffer 數據交換格式
Auxon 自動化容量規划
gRPC Google RPC 框架
Doorman 協作性分布式客戶端節流系統
Zipking 業務流追蹤
Stackdriver

兩點吐槽

一、繞口的翻譯
P158:一個測試系統可以檢測出一個MTTR為0的Bug。
P253:這種設計類型在服務領頭人的工作量是分片的。
P327:Google幾乎沒有處理大規模消費者產品運行不能直接控制的客戶端代碼的經驗。

二、強大的客戶端

全書各章節及小評

章節及名稱 感想
1 介紹
2 Google 生產環境:SRE視角
3 擁抱風險
4 服務質量目標
5 減少瑣事
6 分布式系統的監控
7 Google 的自動化系統演進 自動化的價值,自動化的層次
8 發布工程
9 簡單化
10 基於時間序列數據進行有效報警
11 on-call 輪值
12 有效的故障排查手段
13 緊急事件響應
14 緊急事故管理
15 事后總結:從失敗中學習
16 跟蹤故障
17 測試可靠性
18 SRE部門中的軟件工程實踐
19 前端服務器的負載均衡 不同數據中心之間的負載均衡策略最佳實踐,基本的方案有DNS、VIP(網絡負載均衡器 F5)
20 數據中心內部的負載均衡系統 從應用層面談如何進行負載均衡,如何讓各台服務器的使用率更加均衡,避免出現閑忙不均的情況。如何更准確的識別出后端的真實狀態的方法:跛腳鴨狀態。
21 應對過載
22 處理連鎖故障
23 管理關鍵狀態:利用分布式共識來提高可靠性
24 分布式周期性任務系統
25 數據處理流水線
26 數據完整性:讀寫一致
27 可靠地進行產品的大規模發布
28 迅速培養SRE加入on-call
29 處理中斷性任務
30 通過嵌入SRE的方式幫助團隊從運維過載中恢復
31 SRE與其它團隊的溝通與協作
32 SRE參與模式的演進歷史
33 其他行業的實踐經驗
34 結語

參考資料:
1、Google Borgmon
2、Google使用Borg進行大規模集群的管理-2015
3、基於 Prometheus 的數據庫監控
4、Prometheus
5、Google Protocol Buffer 的使用和原理
6、Doorman: Global Distributed Client Side Rate Limiting
7、SRE Book notes
8、Zipkin
9、morgue 事故總結工具
10、Incident management at Google
11、TerraForm
12、


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM