第1篇 開門見山:運維發展史
第1章 運維現狀 2
1.1 運維工程 2
1.1.1 認識運維 2
1.1.2 主要職責 4
1.1.3 運維技術 5
1.2 運維發展曆程 6
1.2.1 人工階段 6
1.2.2 工具和自動化階段 7
1.2.3 平颱化階段 7
1.2.4 智能運維階段 8
1.3 運維現狀 9
1.3.1 故障頻發 9
1.3.2 係統復雜性 10
1.3.3 大數據環境 12
1.4 本章小結 14
1.5 參考文獻 14
第2章 智能運維 15
2.1 海量數據的存儲、分析和處理 16
2.2 多維度、多數據源 18
2.3 信息過載 19
2.4 復雜業務模型下的故障定位 21
2.5 本章小結 22
2.6 參考文獻 22
第2篇 站在巨人肩上:智能運維基礎設施
第3章 開源數據采集技術 25
3.1 數據采集工具對比 25
3.2 輕量級采集工具Filebeat 26
3.2.1 Filebeat工作原理 26
3.2.2 Filebeat的安裝與配置 28
3.2.3 啓動和運行Filebeat 38
3.3 日誌采集解析工具 38
3.3.1 Logstash工作原理 39
3.3.2 安裝Logstash 40
3.3.3 配置Logstash 41
3.3.4 啓動Logstash 49
3.4 本章小結 49
3.5 參考文獻 50
第4章 分布式消息隊列 51
4.1 開源消息隊列對比與分析 51
4.1.1 概述 51
4.1.2 ZeroMQ 51
4.1.3 ActiveMQ 52
4.1.4 RocketMQ 52
4.1.5 Kafka 53
4.2 Kafka的安裝與使用 53
4.2.1 組件概念 53
4.2.2 基本特性 53
4.2.3 安裝與使用 54
4.2.4 Java API的使用 55
4.3 案例分析 57
4.3.1 日誌采集 58
4.3.2 實時結算 58
4.3.3 實時計算 58
4.4 本章小結 58
4.5 參考文獻 59
第5章 大數據存儲技術 60
5.1 傳統數據存儲 60
5.1.1 傳統應用的架構 60
5.1.2 傳統存儲的運行機製 61
5.1.3 傳統存儲帶來的問題 62
5.2 基於HDFS的分布式存儲 63
5.2.1 分布式存儲的定義 63
5.2.2 HDFS的基本原理 64
5.2.3 HDFS架構解析 65
5.2.4 HDFS的優勢 66
5.2.5 HDFS不適閤的場景 67
5.3 分層存儲 68
5.3.1 數據倉庫 68
5.3.2 數據倉庫分層架構 70
5.3.3 分層存儲的好處 73
5.4 案例分析 73
5.4.1 數據存儲架構 73
5.4.2 數據倉庫建模 74
5.4.3 常見的存儲問題及解決方案 80
5.5 本章小結 80
5.6 參考文獻 80
第6章 大規模數據離綫計算分析 82
6.1 經典的離綫計算 82
6.1.1 Linux神級工具sed和awk 82
6.1.2 Python數據處理Pandas基礎 84
6.1.3 Python的優勢和不足 88
6.2 分布式離綫計算 89
6.2.1 MapReduce離綫計算 89
6.2.2 離綫計算的數據傾斜問題 97
6.2.3 分布式離綫計算的技術棧 100
6.3 案例分析 101
6.3.1 離綫計算管理 102
6.3.2 離綫計算原子控製 103
6.3.3 離綫計算的數據質量 103
6.4 本章小結 104
6.5 參考文獻 105
第7章 實時計算框架 106
7.1 關於實時流計算 106
7.1.1 如何提高實時流計算的實時性 106
7.1.2 如何提高實時流計算結果的準確性 107
7.1.3 如何提高實時流計算結果的響應速度 107
7.2 Spark Streaming計算框架介紹 107
7.2.1 概述 107
7.2.2 基本概念 108
7.2.3 運行原理 108
7.2.4 編程模型 109
7.2.5 Spark Streaming的使用 110
7.2.6 優化運行時間 114
7.3 Flink計算框架 115
7.3.1 基本概念 116
7.3.2 Flink特點 116
7.3.3 運行原理 118
7.3.4 Java API的使用 121
7.4 案例分析 124
7.4.1 背景介紹 125
7.4.2 架構設計 126
7.4.3 效果分析 126
7.5 本章小結 126
7.6 參考文獻 126
第8章 時序數據分析框架 127
8.1 時序數據庫簡介 127
8.1.1 什麼是時序數據庫 127
8.1.2 時序數據庫的特點 128
8.1.3 時序數據庫的對比 130
8.2 時序數據庫Graphite 131
8.2.1 Graphite簡介 131
8.2.2 Graphite在微博廣告監控係統中的應用 137
8.3 多維分析利器Druid 139
8.3.1 什麼是Druid 139
8.3.2 Druid架構 140
8.3.3 Druid在微博廣告監控平颱中的應用 144
8.4 性能神器ClickHouse 147
8.4.1 什麼是ClickHouse 147
8.4.2 ClickHouse的特性 148
8.4.3 ClickHouse的不足 149
8.4.4 安裝配置ClickHouse 149
8.4.5 錶引擎 153
8.4.6 函數支持 157
8.5 本章小結 160
8.6 參考文獻 160
第9章 機器學習框架 161
9.1 簡介 161
9.2 TensorFlow介紹 162
9.2.1 什麼是TensorFlow 162
9.2.2 下載安裝 162
9.2.3 “Hello TensorFlow”示例 166
9.3 TensorFlow進階 166
9.3.1 基礎理論 167
9.3.2 模型準備 169
9.3.3 訓練數據 169
9.3.4 模型訓練 171
9.3.5 生成seq2seq句子 174
9.3.6 運行演示 175
9.4 本章小結 178
9.5 參考文獻 179
第3篇 運維新時代:智能運維技術詳解
第10章 數據聚閤與關聯技術 182
10.1 數據聚閤 182
10.1.1 聚閤運算 183
10.1.2 多維度聚閤 186
10.2 降低維度 188
10.2.1 將告警聚閤成關聯“事件” 189
10.2.2 減少誤報:告警分類 190
10.3 數據關聯 192
10.4 實時數據關聯案例 193
10.4.1 設計方案 193
10.4.2 效果 195
10.5 本章小結 195
10.6 參考文獻 195
第11章 數據異常點檢測技術 196
11.1 概述 196
11.2 異常檢測方法 198
11.2.1 基於統計模型的異常點檢測 199
11.2.2 基於鄰近度的異常點檢測 202
11.2.3 基於密度的異常點檢測 203
11.3 獨立森林 204
11.4 本章小結 207
11.5 參考文獻 207
第12章 故障診斷和分析策略 208
12.1 日誌標準化 209
12.2 全鏈路追蹤 210
12.3 SLA的統一 210
12.4 傳統的故障定位方法 211
12.4.1 監控告警型 211
12.4.2 日誌分析型 212
12.5 人工智能在故障定位領域的應用 213
12.5.1 基於關聯規則的相關性分析 213
12.5.2 基於決策樹的故障診斷 217
12.6 本章小結 222
12.7 參考文獻 222
第13章 趨勢預測算法 223
13.1 移動平均法 223
13.2 指數平滑法 224
13.3 ARIMA模型 226
13.3.1 簡介 226
13.3.2 重要概念 226
13.3.3 參數解釋 228
13.3.4 建模步驟 230
13.3.5 ARIMA模型案例 232
13.4 神經網絡模型 236
13.4.1 捲積神經網絡 236
13.4.2 循環神經網絡 238
13.4.3 長短期記憶網絡 239
13.4.4 應用說明 241
13.5 本章小結 241
13.6 參考文獻 242
第4篇 智能運維架構實踐:技術案例詳解
第14章 快速構建日誌監控係統 244
14.1 Elasticsearch分布式搜索引擎 244
14.1.1 基本概念 244
14.1.2 分布式文檔存儲與讀取 248
14.1.3 分布式文檔檢索 250
14.1.4 分片管理 252
14.1.5 路由策略 254
14.1.6 映射 255
14.2 可視化工具Kibana 258
14.2.1 Management 260
14.2.2 Discover 260
14.2.3 Visualize 262
14.2.4 Dashboard 263
14.2.5 Timelion 263
14.2.6 Dev Tools 264
14.3 ELK搭建實踐 265
14.3.1 Logstash安裝配置 265
14.3.2 Elasticsearch集群安裝配置 266
14.3.3 Kibana安裝配置 273
14.4 本章小結 274
14.5 參考文獻 274
第15章 微博廣告智能監控係統 275
15.1 背景介紹 275
15.1.1 監控指標體係 275
15.1.2 功能設計原則 276
15.2 整體架構 277
15.3 核心功能分析 278
15.3.1 全景監控 278
15.3.2 趨勢預測 281
15.3.3 動態閾值 285
15.3.4 服務治理 285
15.4 本章小結 287
第16章 微博平颱通用監控係統 288
16.1 背景 289
16.2 整體架構 290
16.3 核心模塊 291
16.3.1 數據采集(Logtailer) 291
16.3.2 數據路由(Statsd-proxy) 293
16.3.3 聚閤運算(Statsd) 294
16.3.4 數據分發(C-Relay)和數據存儲 294
16.3.5 告警模塊 295
16.3.6 API設計 299
16.3.7 數據可視化 300
16.4 第三方應用 301
16.4.1 決策支持係統 301
16.4.2 運維自動化 302
16.4.3 成本分析和容量日報 302
16.4.4 機器學習 302
16.5 本章小節 302
附錄A 中國大數據技術大會2017(BDTC 2017)CSDN專訪實錄 303
· · · · · · (
收起)