云原生時代的可觀測系統(tǒng)最佳實戰(zhàn)
定 價:108 元
- 作者:羅夢婷
- 出版時間:2023/9/1
- ISBN:9787121460456
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP393.027
- 頁碼:320
- 紙張:
- 版次:01
- 開本:16開
在云原生時代,可觀測性覆蓋了應(yīng)用的全生命周期,是云原生應(yīng)用必備的工具之一。 本書基于筆者多年的云原生可觀測性實踐經(jīng)驗,從可觀測系統(tǒng)的演進和基礎(chǔ)理論開始介紹,結(jié)合案例對可觀測系統(tǒng)的開源架構(gòu)、日志、鏈路、監(jiān)控、事件和診斷等關(guān)鍵要素的系統(tǒng)設(shè)計方案及問題解決思路進行闡述,幫助讀者了解在業(yè)務(wù)實踐中可觀測性對云原生應(yīng)用有哪些巨大助力。 本書適合云原生應(yīng)用開發(fā)人員、架構(gòu)師、運維人員、測試人員,以及云計算相關(guān)從業(yè)人員閱讀。
羅夢婷,畢業(yè)于廣東海洋大學(xué)電子信息工程專業(yè),先后任職于九聯(lián)、華潤、騰訊等大型企業(yè),參與騰訊云微服務(wù)平臺的核心研發(fā)工作,擔(dān)任可觀測系統(tǒng)技術(shù)負責(zé)人,在云原生、物聯(lián)網(wǎng)及AI等技術(shù)領(lǐng)域具有成熟的架構(gòu)設(shè)計經(jīng)驗,先后主導(dǎo)過多個大型產(chǎn)業(yè)數(shù)字化項目的落地。蒲實,畢業(yè)于復(fù)旦大學(xué)軟件學(xué)院,目前就職于騰訊,負責(zé)騰訊云微服務(wù)平臺TSF可觀測性相關(guān)產(chǎn)品功能的研發(fā),在可觀測性、微服務(wù)等技術(shù)領(lǐng)域具有豐富的實戰(zhàn)經(jīng)驗,致力于打造高穩(wěn)定性、高可用性的云原生可觀測性產(chǎn)品。
第1章 可觀測性概述 1
1.1 可觀測系統(tǒng)的演進 1
1.1.1 系統(tǒng)架構(gòu)的演進 1
1.1.2 可觀測性和監(jiān)控的關(guān)系 6
1.1.3 可觀測性技術(shù)的現(xiàn)狀 13
1.2 可觀測性數(shù)據(jù) 20
1.2.1 可觀測性數(shù)據(jù)的類型 20
1.2.2 實戰(zhàn)場景下運維人員觀測的數(shù)據(jù) 24
1.2.3 實戰(zhàn)場景下研發(fā)人員觀測的數(shù)據(jù) 27
1.3 可觀測性技術(shù)的價值 29
1.3.1 發(fā)現(xiàn)系統(tǒng)故障 30
1.3.2 預(yù)測系統(tǒng)故障和容量 31
1.3.3 提供事故分析報告 33
1.3.4 預(yù)測變更的影響 35
第2章 系統(tǒng)架構(gòu) 38
2.1 架構(gòu)設(shè)計的基本原則 38
2.1.1 統(tǒng)一的數(shù)據(jù)語義 39
2.1.2 統(tǒng)一的數(shù)據(jù)處理平臺 46
2.1.3 統(tǒng)一的可視化系統(tǒng) 48
2.2 平臺基礎(chǔ)架構(gòu)設(shè)計實戰(zhàn) 53
2.2.1 實戰(zhàn)一:基于開源Grafana+Prometheus+Tempo+Loki的解決方案 53
2.2.2 實戰(zhàn)二:基于開源Elastic Stack的解決方案 71
2.2.3 實戰(zhàn)三:開源架構(gòu)優(yōu)化之解決大規(guī)模數(shù)據(jù)計算問題 81
第3章 日志系統(tǒng)實戰(zhàn) 91
3.1 日志模型的設(shè)計 91
3.2 日志系統(tǒng)的選型實戰(zhàn) 95
3.2.1 全文檢索的首選:Elasticsearch實戰(zhàn) 95
3.2.2 新生代列式存儲:ClickHouse實戰(zhàn) 101
3.3 Elasticsearch調(diào)優(yōu)實戰(zhàn)指南 104
3.3.1 實戰(zhàn)一:Elasticsearch索引模塊及配置Index、Shard、Segment 105
3.3.2 實戰(zhàn)二:合理使用Elasticsearch數(shù)據(jù)字段,配置pipeline和mapping 113
3.3.3 實戰(zhàn)三:在大規(guī)模系統(tǒng)中選擇字段存儲方式 121
3.3.4 實戰(zhàn)四:PB級別數(shù)據(jù)量場景下的Elasticsearch調(diào)優(yōu) 126
3.3.5 實戰(zhàn)五:降本增效,預(yù)測Elasticsearch集群的規(guī)模并控制成本 130
第4章 鏈路追蹤系統(tǒng)實戰(zhàn) 135
4.1 設(shè)計鏈路追蹤模型 135
4.1.1 鏈路追蹤的發(fā)展歷程 135
4.1.2 Span語義規(guī)范 138
4.2 系統(tǒng)選型實戰(zhàn) 141
4.2.1 OpenTelemetry調(diào)用鏈實戰(zhàn) 141
4.2.2 Spring Cloud Sleuth實戰(zhàn) 157
4.2.3 Istio實戰(zhàn) 169
4.2.4 Filebeat采集方案實戰(zhàn) 172
4.2.5 Elasticsearch存儲實戰(zhàn) 176
4.3 鏈路追蹤系統(tǒng)實戰(zhàn)場景 181
4.3.1 實戰(zhàn)一:頭采、尾采、單元采樣的區(qū)別與技術(shù)難點 181
4.3.2 實戰(zhàn)二:在萬億級調(diào)用量下應(yīng)如何自適應(yīng)采樣 185
4.3.3 實戰(zhàn)三:陳舊系統(tǒng)如何接入全鏈路追蹤系統(tǒng) 188
第5章 指標(biāo)系統(tǒng)實戰(zhàn) 193
5.1 指標(biāo)采集模型的設(shè)計 193
5.1.1 指標(biāo)數(shù)據(jù)的分類 193
5.1.2 指標(biāo)數(shù)據(jù)的語義規(guī)范 197
5.2 系統(tǒng)選型實戰(zhàn) 200
5.2.1 OpenTelemetry指標(biāo)監(jiān)控實戰(zhàn) 200
5.2.2 Spring Boot Actuator監(jiān)控實戰(zhàn) 216
5.2.3 自研指標(biāo)監(jiān)控實戰(zhàn) 226
5.2.4 內(nèi)核監(jiān)控之eBPF實戰(zhàn) 231
5.3 指標(biāo)系統(tǒng)實戰(zhàn)場景 238
5.3.1 實戰(zhàn)一:如何保證海量數(shù)據(jù)上報的實時性和完整性 238
5.3.2 實戰(zhàn)二:當(dāng)陷入告警風(fēng)暴時應(yīng)該如何實現(xiàn)告警降噪 240
5.3.3 實戰(zhàn)三:使用Filebeat采集指標(biāo)數(shù)據(jù),如何在服務(wù)端去重 244
第6章 事件中心實戰(zhàn) 251
6.1 事件中心的設(shè)計 251
6.1.1 事件驅(qū)動架構(gòu)概述 251
6.1.2 事件模型的設(shè)計 254
6.1.3 事件中心的設(shè)計及實戰(zhàn) 256
6.2 高可用事件中心實戰(zhàn) 258
第7章 Profile診斷實戰(zhàn) 261
7.1 線上分析工具 261
7.1.1 JDK原生工具 261
7.1.2 Java線上診斷工具 266
7.1.3 網(wǎng)絡(luò)請求分析工具Wireshark 272
7.2 線上問題實時分析實戰(zhàn) 275
7.2.1 實戰(zhàn)一:當(dāng)線上業(yè)務(wù)內(nèi)存溢出時如何定位 276
7.2.2 實戰(zhàn)二:當(dāng)線上業(yè)務(wù)CPU的使用率較高時如何定位 281
7.2.3 實戰(zhàn)三:當(dāng)線上業(yè)務(wù)I/O異常時如何定位 283
7.2.4 實戰(zhàn)四:當(dāng)接口請求響應(yīng)變慢時應(yīng)如何定位 285
7.3 線上問題處理流程實戰(zhàn) 286
第8章 可觀測性的探索 289
8.1 DevOps與可觀測性 289
8.1.1 服務(wù)依賴關(guān)系 289
8.1.2 了解新版本的變化 293
8.1.3 全鏈路壓力測試不可或缺的可觀測性 296
8.1.4 利用混沌工程及時發(fā)現(xiàn)問題 298
8.2 AIOps與可觀測性 302
8.2.1 如何選擇合適的數(shù)據(jù)和算法 303
8.2.2 企業(yè)級場景下AIOps落地的難點與經(jīng)驗 306