高可用性的HDFS—Hadoop分散式檔案系統深度實踐

高可用性的HDFS—Hadoop分散式檔案系統深度實踐

4.2.1 7.2.1 7.4 n

基本信息

作者: 文艾 王磊


出版社:清華大學出版社
ISBN:9787302282587
上架時間:2012-5-9
出版日期:2012 年5月
開本:16開
頁碼:1
版次:1-1
所屬分類: 計算機 > 軟體與程式設計 > 分散式系統設計

內容簡介

計算機書籍
《高可用性的hdfs—hadoop分散式檔案系統深度實踐》專注於hadoop分散式檔案系統(hdfs)的主流ha解決方案,內容包括:hdfs元數據解析、hadoop元數據備份方案、hadoop backup nODE方案、avatarnode解決方案以及最新的ha解決方案cloudrea ha name node等。其中有關backup node方案及avatarnode方案的內容是本書重點,尤其是對avatarnode方案從運行機制到異常處理方案的步驟進行了詳盡介紹,同時還總結了各種異常情況下avatarnode的各種處理方案。
《高可用性的hdfs—hadoop分散式檔案系統深度實踐》從代碼入手並結合情景分析、案例解說對hdfs的元數據以及主流的hdfs ha解決方案的運行機制進行了深入剖析,力求使讀者在解決問題時做到心中有數,不僅知其然還知其所以然。
本書光碟包含本書部分操作的視頻教程以及所有原始碼、腳本等開發檔案。
《高可用性的hdfs—hadoop分散式檔案系統深度實踐》讀者主要為雲計算相關領域的研發人員、雲計算系統管理維護人員,也適合作為高校研究生和高年級本科生的專業課輔助教材。

目錄

《高可用性的hdfs—hadoop分散式檔案系統深度實踐》
第1章 hdfs ha及解決方案 1
1.1 hdfs系統架構 2
1.2 ha定義 3
1.3 hdfs ha原因分析及應對措施 4
1.3.1 可靠性 4
1.3.2 可維護性 5
1.4 現有hdfs ha解決方案 5
1.4.1 hadoop的元數據備份方案 6
1.4.2 hadoop的secondarynamenode方案 7
1.4.3 hadoop的checkpoint ode方案 7
1.4.4 hadoop的backupnode方案 8
1.4.5 drdb方案 9
1.4.6 facebook的avatarnode方案 10
1.5 方案優缺點比較 10
第2章 hdfs元數據解析 13
2.1 概述 14
2.2 記憶體元數據結構 14
2.2.1 inode 15
2.2.2 block 16
.2.2.3 blockinfo和datanodedescriptor 17
2.2.4 小結 17
2.2.5 代碼分析——元數據結構 18
2.3 磁碟元數據檔案 24
2.4 format情景分析 27
2.5 元數據套用場景分析 45
第3章 hadoop的元數據備份方案 47
3.1 運行機制分析 48
3.1.1 namenode啟動載入元數據情景分析 50
3.1.2 元數據更新及日誌寫入情景分析 64
3.1.3 checkpoint過程情景分析 73
3.1.4 元數據可靠性機制 109
3.1.5 元數據一致性機制 110
3.2 使用說明 110
第4章 hadoop的backup node方案 113
4.1 backup node概述 114
4.1.1 系統架構 115
4.1.2 使用原則 115
4.1.3 優缺點 116
4.2 運行機制分析 116
4.2.1 啟動流程 117
4.2.2 元數據操作情景分析 141
4.2.3 日誌池(journal spool)機制 151
4.2.4 故障切換機制 156
4.3 實驗方案說明 158
4.4 構建實驗環境 158
4.4.1 網路拓撲 159
4.4.2 系統安裝及配置 160
4.4.3 安裝jdk 170
4.4.4 虛擬機集群架設 171
4.4.5 namenode安裝及配置 173
4.4.6 backup node安裝及配置 173
4.4.7 data node安裝及配置 174
4.4.8 clients安裝及配置 175
4.5 異常解決方案 175
4.5.1 異常情況分析 175
4.5.2 namenode配置 175
4.5.3 backup node配置 182
4.5.4 data node配置 185
4.5.5 namenode宕機切換實驗 189
4.5.6 namenode宕機讀寫測試 196
第5章 avatarnode運行機制 205
5.1 方案說明 206
5.1.1 系統架構 206
5.1.2 思路分析 208
5.1.3 性能數據 209
5.2 元數據分析 209
5.2.1 類fsnamesystem 210
5.2.2 類fsdirectory 210
5.2.3 avatarnode的磁碟元數據檔案 211
5.3 avatarnode primary啟動過程 211
5.4 avatarnode standby啟動過程 217
5.4.1 avatarnode的構造方法 217
5.4.2 standby執行緒的run()方法 218
5.4.3 ingest執行緒的run()方法 220
5.4.4 ingest執行緒的ingestfsedits ()方法 220
5.4.5 standby執行緒的docheckpoint()方法 221
5.5 用戶操作情景分析 223
5.5.1 創建目錄情景分析 223
5.5.2 創建檔案情景分析 231
5.6 avatarnode standby故障切換過程 240
5.7 元數據一致性保證機制 242
5.7.1 元數據目錄樹信息 242
5.7.2 data node與block數據塊映射信息 243
5.8 block更新同步問題 246
5.8.1 問題描述 246
5.8.2 結論 246
5.8.3 源碼分析 246
第6章 avatarnode使用 253
6.1 方案說明 254
6.1.1 網路拓撲 254
6.1.2 作業系統安裝及配置 255
6.2 使用avatar打補丁版本 255
6.2.1 hadoop源碼在線上build 256
6.2.2 hadoop源碼本地build 262
6.2.3 nfs伺服器構建 264
6.2.4 avatar分發與部署 267
6.2.5 primary(namenode0)節點配置 269
6.2.7 data node節點配置 276
6.2.8 client節點配置 278
6.2.9 創建目錄 279
6.2.10 掛載nfs 280
6.2.11 啟動ucarp 280
6.2.12 格式化 281
6.2.13 系統啟動 281
6.2.14 檢查 282
6.2.15 namenode失效切換寫檔案實驗 283
6.2.16 namenode失效切換讀檔案實驗 291
6.3 avatar facebook版本的使用 294
6.3.1 hadoop facebook版本安裝 294
6.3.2 節點配置 295
6.3.3 啟動hdfs 300
6.3.4 namenode失效切換 302
第7章 avatarnode異常解決方案 305
7.1 測試環境 306
7.2 primary失效 306
7.2.1 解決方案 306
7.2.2 寫操作實驗步驟 307
7.2.3 改進寫操作機制 313
7.2.4 讀操作實驗步驟 313
7.2.5 小結 317
7.3 standby失效 317
7.4 nfs失效(數據未損壞) 317
7.4.1 解決方案 317
7.4.2 寫操作實驗步驟 318
7.4.3 讀操作實驗步驟 320
7.4.4 小結 322
7.5 nfs失效(數據已損壞) 323
7.5.1 解決方案 323
7.5.2 寫操作實驗步驟 324
7.5.3 讀操作實驗步驟 327
7.5.4 小結 330
7.6 primary先失效,nfs後失效(數據未損壞) 331
7.6.1 解決方案 331
7.6.2 寫操作實驗步驟 331
7.6.3 讀操作實驗步驟 333
7.6.4 小結 334
7.7 primary先失效(數據未損壞),nfs後失效(數據損壞) 335
7.7.1 解決方案 335
7.7.2 寫操作實驗步驟 335
7.7.3 讀操作實驗步驟 338
7.7.4 小結 339
7.8 nfs先失效(數據未損壞),primary後失效 340
7.8.1 解決方案 340
7.8.2 寫操作實驗步驟 340
7.8.3 讀操作實驗步驟 342
7.8.4 小結 343
7.9 nfs先失效(數據損壞),primary後失效(數據損壞) 344
7.9.1 解決方案 344
7.9.2 寫操作實驗步驟 344
7.9.3 讀操作實驗步驟 346
7.9.4 小結 348
7.10 實驗結論 348
第8章 cloudera ha namenode使用 349
8.1 ha namenode說明 350
8.2 cdh4b1版本hdfs集群配置 351
8.2.1 虛擬機安裝 351
8.2.2 nn1配置 351
8.2.3 dn1~dn3配置 355
8.2.4 hdfs集群構建 358
8.3 ha namenode配置 361
8.3.1 nn1配置 361
8.3.2 其他節點配置 365
8.4 ha namenode使用 367
8.4.1 啟動ha hdfs集群 367
8.4.2 第1次failover 368
8.4.3 模擬寫操作 368
8.4.4 模擬active name node失效,第2次failover 369
8.3.5 模擬新的standby namenode加入 370
8.5 小結 371

相關詞條

熱門詞條

聯絡我們