雲原生分布式存儲基石:etcd深入解析

雲原生分布式存儲基石:etcd深入解析 pdf epub mobi txt 電子書 下載2025

出版者:機械工業齣版社
作者:杜軍
出品人:
頁數:309
译者:
出版時間:2018-11-5
價格:79
裝幀:平裝
isbn號碼:9787111611929
叢書系列:雲計算技術係列叢書
圖書標籤:
  • etcd
  • go
  • Distributed
  • Etcd
  • 計算機
  • 分布式
  • raft
  • 計算機科學
  • etcd
  • 雲原生
  • 分布式存儲
  • 微服務
  • Kubernetes
  • Go語言
  • 數據一緻性
  • 配置管理
  • 服務發現
  • 運維實踐
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

本書為讀者深度解析分布式鍵值存儲係統,全書分為3部分,第1部分是對分布式係統的概念和一緻性協議的綜述,重點解析Raft協議,使讀者對分布式鍵值存儲係統有初步瞭解;第2部分介紹etcd安裝、部署、運維、安全、API調用等方麵的知識,幫助讀者進一步掌握分布式係統的使用方法,熟悉其常見功能和使用場景;第3部分是本書的特色部分,從代碼層次深入探討瞭etcd各大關鍵特性的具體設計與實現原理,讀者讀完本部分,會對整個etcd的架構有更加清晰的認識,可以從中汲取靈感,從而將一些實用的經驗應用到自己的分布式係統中。

著者簡介

杜軍,浙江大學計算機學院碩士畢業,《Docker——容器與容器雲》和《雲原生分布式存儲基石:etcd》這兩本書的作者。現任職於華為Cloud BU PaaS服務産品部,主要負責容器與Kubernetes集群管理技術的研發。是Kubernetes核心維護者,也是CNCF TOC Contributor。在Kubernetes社區主導瞭Kube-proxy IPVS模式,Pod網絡QoS,流圖調度器Poseidon,Cluster-API-OpenStack和邊緣計算KubeEdge等項目的開發。你可以在KubeCon,LinuxCon和CNUTCon等大會找到我分享的主題演講,我也做過多次Kubernetes和CKA考試的培訓。

圖書目錄

前言
第一部分 基礎篇
第1章 分布式係統與一緻性協議 2
1.1 CAP原理 3
1.2 一緻性 5
1.2.1 一緻性模型 7
1.2.2 一緻性模型分述 9
1.2.3 復製狀態機 16
1.2.4 拜占庭將軍問題 18
1.2.5 FLP不可能性 19
1.2.6 小結 21
1.3 Paxos協議 22
1.4 Raft協議:為可理解性而生 24
1.4.1 Raft一緻性算法 26
1.4.2 可用性與時序 45
1.4.3 異常情況 46
1.4.4 日誌壓縮與快照 52
1.4.5 Raft算法性能評估 56
1.4.6 小結 58
第二部分 實戰篇
第2章 為什麼使用etcd 62
2.1 etcd是什麼 64
2.2 etcd架構簡介 66
2.2.1 etcd數據通道 69
2.2.2 etcd架構 71
2.3 etcd典型應用場景舉例 72
2.3.1 服務注冊與發現 72
2.3.2 消息發布和訂閱 75
2.3.3 負載均衡 76
2.3.4 分布式通知與協調 77
2.3.5 分布式鎖 78
2.3.6 分布式隊列 80
2.3.7 集群監控與Leader競選 81
2.3.8 小結 82
2.4 etcd性能測試 82
2.4.1 etcd讀性能 82
2.4.2 etcd寫性能 83
2.5 etcd與其他鍵值存儲係統的對比 84
2.5.1 ZooKeeper VS etcd 85
2.5.2 Consul VS etcd 88
2.5.3 NewSQL(Cloud Spanner、CockroachDB、TiDB)VS etcd 88
2.5.4 使用etcd做分布式協同 89
2.5.5 小結 90
2.6 使用etcd的項目 90
2.7 etcd概念詞匯錶 91
2.8 etcd發展裏程碑 92
2.8.1 etcd 0.4版本 93
2.8.2 etcd 2.0版本 93
2.8.3 etcd 3.0版本 93
第3章 etcd初體驗 95
3.1 單機部署 95
3.1.1 單實例etcd 95
3.1.2 多實例etcd 98
3.2 多節點集群化部署 100
3.2.1 靜態配置 101
3.2.2 服務發現 104
3.3 etcdctl常用命令行 107
3.3.1 key的常規操作 107
3.3.2 key的曆史與watch 112
3.3.3 租約 115
3.4 etcd常用配置參數 117
3.4.1 member相關參數項 117
3.4.2 cluster相關參數項 118
3.4.3 proxy相關參數項 120
3.4.4 安全相關參數項 120
3.4.5 日誌相關參數項 121
3.4.6 不安全參數項 121
3.4.7 統計相關參數項 122
3.4.8 認證相關參數項 122
第4章 etcd開放API之v 2123
4.1 API保證 124
4.2 etcd v2 API 126
4.2.1 集群管理API 126
4.2.2 鍵值API 126
4.2.3 鍵的TTL 130
4.2.4 等待變化通知:watch 134
4.2.5 自動創建有序key 146
4.2.6 目錄TTL 148
4.2.7 原子的CAS 149
4.2.8 原子的CAD 151
4.2.9 創建目錄 153
4.2.10 羅列目錄 154
4.2.11 刪除目錄 156
4.2.12 獲取一個隱藏節點 157
4.2.13 通過文件設置key 158
4.2.14 綫性讀 158
4.3 統計數據 158
4.3.1 Leader數據 159
4.3.2 節點自身的數據 160
4.3.3 更多統計數據 161
4.4 member API 162
4.4.1 List member 162
4.4.2 加入一個member 163
4.4.3 刪除一個member 163
4.4.4 修改member的peer URL 164
第5章 etcd開放API之v 3165
5.1 從etcd v2到etcd v 3166
5.1.1 gRPC 167
5.1.2 序列化和反序列化優化 167
5.1.3 減少TCP連接 167
5.1.4 租約機製 167
5.1.5 etcd v3的觀察者模式 168
5.1.6 etcd v3的數據存儲模型 169
5.1.7 etcd v3的迷你事務 170
5.1.8 快照 171
5.1.9 大規模watch 171
5.2 gRPC服務 172
5.3 請求和響應 174
5.4 KV API 176
5.4.1 鍵值對 176
5.4.2 revision 177
5.4.3 鍵區間 178
5.4.4 Range API 178
5.4.5 PUT調用 181
5.4.6 事務 182
5.4.7 Compact調用 186
5.5 watch API 186
5.5.1 Event 187
5.5.2 流式watch 187
5.6 Lease API 190
5.6.1 獲得租約 190
5.6.2 Keep Alives 192
5.7 API使用示例 192
第6章 etcd集群運維與穩定性 195
6.1 etcd升級 195
6.1.1 etcd從2.3升級到3. 0195
6.1.2 etcd從3.0升級到3. 1199
6.2 從etcd v2切換到v 3202
6.2.1 切換客戶端代碼 202
6.2.2 數據遷移 203
6.3 運行時重配置 204
6.3.1 兩階段配置更新保證集群安全 205
6.3.2 永久性失去半數以上member 206
6.4 參數調優 207
6.4.1 時間參數 207
6.4.2 快照 208
6.4.3 磁盤 209
6.4.4 網絡 209
6.5 監控 209
6.6 維護 210
6.6.1 壓縮曆史版本 210
6.6.2 消除碎片化 211
6.6.3 存儲配額 211
6.6.4 快照備份 213
6.7 災難恢復 213
6.7.1 快照 214
6.7.2 恢復集群 214
6.8 etcd網關 215
6.8.1 什麼時候使用etcd網關 216
6.8.2 什麼時候不該使用etcd網關 216
6.8.3 啓動etcd網關 217
6.9 gRPC代理 217
6.9.1 可擴展的watch API 218
6.9.2 限製 219
6.9.3 可擴展的帶租約的API 219
6.9.4 服務端保護 220
6.9.5 啓動gRPC代理 220
6.9.6 客戶端節點同步和域名解析 221
6.9.7 名字空間 222
6.10 故障恢復 223
6.10.1 小部分從節點故障 223
6.10.2 主節點故障 224
6.10.3 大部分節點故障 224
6.10.4 網絡分區 224
6.10.5 集群啓動異常 225
6.11 硬件 225
第7章 etcd安全 231
7.1 訪問安全 231
7.1.1 權限資源 232
7.1.2 鍵值資源 234
7.1.3 配置資源 234
7.2 etcd訪問控製實踐 235
7.2.1 User相關命令 235
7.2.2 Role相關命令 236
7.2.3 啓用用戶權限功能 237
7.3 傳輸安全 238
7.3.1 TLS/SSL工作原理 239
7.3.2 使用TLS加密etcd通信 241
7.3.3 etcd安全配置詳解 247
第三部分 高級篇
第8章 多版本並發控製 252
8.1 為什麼選擇MVCC 253
8.2 etcd v2存儲機製實現 255
8.3 etcd v3數據模型 255
8.3.1 邏輯視圖 256
8.3.2 物理視圖 259
8.4 etcd v3的MVCC的實現 259
8.5 etcd v3 MVCC源碼分析 261
8.5.1 revision 262
8.5.2 key到revision之間的映射關係 263
8.5.3 從BoltDB中讀取key的value值 264
8.5.4 壓縮曆史版本 266
8.6 為什麼選擇BoltDB作為底層的存儲引擎 267
第9章 etcd的日誌和快照管理 269
9.1 數據的持久化和復製 271
9.2 etcd的日誌管理 272
9.2.1 WAL數據結構 272
9.2.2 WAL文件物理格式 273
9.2.3 WAL文件的初始化 274
9.2.4 WAL追加日誌項 276
9.2.5 WAL日誌迴放 277
9.2.6 Master嚮Slave推送日誌 278
9.2.7 Follower日誌追加 280
9.3 etcd v2的快照管理 280
9.3.1 快照數據結構 281
9.3.2 創建快照 281
9.3.3 快照復製 284
9.3.4 快照之後的日誌迴收 286
第10章 etcd v3的事務和隔離 288
10.1 事務ACID 288
10.2 事務的隔離性 289
10.2.1 Read uncommitted(讀未提交) 290
10.2.2 Read committed(讀提交) 290
10.2.3 Repeatable read(重復讀) 290
10.3 etcd的事務 291
10.3.1 Serializability的重要性 291
10.3.2 etcd v3的事務實現 293
10.3.3 軟件事務內存 295
10.3.4 etcd v3 STM實現 296
第11章 etcd watch機製詳解 300
11.1 etcd v2的watch機製詳解 300
11.1.1 客戶端的watch請求 300
11.1.2 key發生變更時通知客戶端 303
11.1.3 帶版本號的watch 303
11.1.4 etcd v2 watch的限製 304
11.2 etcd v3的watch實現機製 306
· · · · · · (收起)

讀後感

評分

我都有点怀疑作者自己有没有看过源码了。 全都是翻译,而且直接使用原来论文的图片?有版权吗? 还是去看隔壁的etcd技术内幕吧,那本作者明显有诚意。 补充 a aa a啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊...  

評分

@[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗...  

評分

@[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗...  

評分

@[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗...  

評分

@[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗? @[Jun Du] 作为作者,这么吹真的好吗...  

用戶評價

评分

第一部分主要描述一緻性協議和Raft算法。一緻性協議感覺博客水平,沒有係統性講解,部分圖片存在錯誤。建議想瞭解一緻性協議的同學讀《分布式係統概念與設計》等書;Raft算法是對Raft論文部分章節的翻譯,而且有些地方有明顯翻譯(或理解)錯誤,建議想瞭解Raft算法的同學一定要閱讀論文原文。 第二部分實戰不評價。 第三部分本應該是本書的重點,但是筆墨偏少,不夠深入。例如etcd讀寫接口怎麼使用的MVCC並沒有細講或者並沒有講清楚;講瞭事務的ACID和隔離級彆,但並沒有很好的和etcd結閤起來;watch機製中的watchhub也沒講。想深入瞭解etcd的同學看來是不能偷懶,還是應該乖乖去擼源碼。

评分

不錯的 etcd 和 raft 入門書

评分

深入淺齣,適閤各個層次讀者。分布式鍵值存儲係統的裏程碑之作!市麵上解讀etcd最好的書籍!

评分

作者在《etcd技術內幕》給人傢差評然後推薦自己的書,人品太差,書肯定不會好。

评分

讀瞭試讀章節,很不錯,原理介紹的比較詳細。

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有