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

china-pub發表於2012-05-21
高可用性的HDFS—Hadoop分散式檔案系統深度實踐
基本資訊
作者: 文艾 王磊
出版社:清華大學出版社
ISBN:9787302282587
上架時間:2012-5-14
出版日期:2012 年5月
開本:16開
頁碼:371
版次:1-1
所屬分類: 計算機 > 軟體與程式設計 > 分散式系統設計
高可用性的HDFS—Hadoop分散式檔案系統深度實踐

更多詳情 》》》
內容簡介
計算機書籍
   《高可用性的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
本來源:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16566727/viewspace-730486/,如需轉載,請註明出處,否則將追究法律責任。

相關文章