欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ceph源碼分析 (常濤) 中文pdf掃描版[134MB]

Ceph源碼分析下載

  • 書籍大小:134MB
  • 書籍語(yǔ)言:簡(jiǎn)體中文
  • 書籍類型:國(guó)產(chǎn)軟件
  • 書籍授權(quán):免費(fèi)軟件
  • 書籍類別:編程其它
  • 應(yīng)用平臺(tái):PDF
  • 更新時(shí)間:2019-10-29
  • 購(gòu)買鏈接:
  • 網(wǎng)友評(píng)分:
360通過 騰訊通過 金山通過

情介紹

隨著云計(jì)算技術(shù)的興起和普及,云計(jì)算基石:分布式共享存儲(chǔ)系統(tǒng)受到業(yè)界的重視。Ceph以其穩(wěn)定、高可用、可擴(kuò)展的特性,乘著開源云計(jì)算管理系統(tǒng)OpenStack的東風(fēng),迅速成為最熱門的開源分布式存儲(chǔ)系統(tǒng)。

Ceph作為一個(gè)開源的分布式存儲(chǔ)系統(tǒng),人人都可以免費(fèi)獲得其源代碼,并能夠安裝部署,但是并不等于人人都能用起來,人人都能用好。用好一個(gè)開源分布式存儲(chǔ)系統(tǒng),首先要對(duì)其架構(gòu)、功能原理等方面有比較好的了解,其次要有修復(fù)漏洞的能力。這些都是在采用開源分布式存儲(chǔ)系統(tǒng)時(shí)所面臨的挑戰(zhàn)。

要用好Ceph,就必須深入了解和掌握Ceph源代碼。Ceph源代碼的實(shí)現(xiàn)被公認(rèn)為比較復(fù)雜,閱讀難度較大。閱讀Ceph源代碼,不但需要對(duì)C++語(yǔ)言以及boost庫(kù)和STL庫(kù)非常熟悉,還需要有分布式存儲(chǔ)系統(tǒng)相關(guān)的基礎(chǔ)知識(shí)以及對(duì)實(shí)現(xiàn)原理的深刻理解,最后還需要對(duì)Ceph框架和設(shè)計(jì)原理以及具體的實(shí)現(xiàn)細(xì)節(jié)有很好的把握。所以Ceph源代碼的閱讀是相當(dāng)有挑戰(zhàn)性的。

目錄

序言
前言
第1章 Ceph整體架構(gòu) 1
1.1 Ceph的發(fā)展歷程 1
1.2 Ceph的設(shè)計(jì)目標(biāo) 2
1.3 Ceph基本架構(gòu)圖 2
1.4 Ceph客戶端接口 3
1.4.1 RBD 4
1.4.2 CephFS 4
1.4.3 RadosGW 4
1.5 RADOS 6
1.5.1 Monitor 6
1.5.2 對(duì)象存儲(chǔ) 7
1.5.3 pool和PG的概念 7
1.5.4 對(duì)象尋址過程 8
1.5.5 數(shù)據(jù)讀寫過程 9
1.5.6 數(shù)據(jù)均衡 10
1.5.7 Peering 11
1.5.8 Recovery和Backfill 11
1.5.9 糾刪碼 11
1.5.10 快照和克隆 12
1.5.11 Cache Tier 12
1.5.12 Scrub 13
1.6 本章小結(jié) 13
第2章 Ceph通用模塊 14
2.1 Object 14
2.2 Buffer 16
2.2.1 buffer::raw 16
2.2.2 buffer::ptr 17
2.2.3 buffer::list 17
2.3 線程池 19
2.3.1 線程池的啟動(dòng) 20
2.3.2 工作隊(duì)列 20
2.3.3 線程池的執(zhí)行函數(shù) 21
2.3.4 超時(shí)檢查 22
2.3.5 ShardedThreadPool 22
2.4 Finisher 23
2.5 Throttle 23
2.6 SafeTimer 24
2.7 本章小結(jié) 25
第3章 Ceph網(wǎng)絡(luò)通信 26
3.1 Ceph網(wǎng)絡(luò)通信框架 26
3.1.1 Message 27
3.1.2 Connection 29
3.1.3 Dispatcher 29
3.1.4 Messenger 29
3.1.5 網(wǎng)絡(luò)連接的策略 30
3.1.6 網(wǎng)絡(luò)模塊的使用 30
3.2 Simple實(shí)現(xiàn) 32
3.2.1 SimpleMessager 33
3.2.2 Accepter 33
3.2.3 DispatchQueue 33
3.2.4 Pipe 34
3.2.5 消息的發(fā)送 35
3.2.6 消息的接收 36
3.2.7 錯(cuò)誤處理 37
3.3 本章小結(jié) 38
第4章 CRUSH數(shù)據(jù)分布算法 39
4.1 數(shù)據(jù)分布算法的挑戰(zhàn) 39
4.2 CRUSH算法的原理 40
4.2.1 層級(jí)化的Cluster Map 40
4.2.2 Placement Rules 42
4.2.3 Bucket隨機(jī)選擇算法 46
4.3 代碼實(shí)現(xiàn)分析 49
4.3.1 相關(guān)的數(shù)據(jù)結(jié)構(gòu) 49
4.3.2 代碼實(shí)現(xiàn) 50
4.4 對(duì)CRUSH算法的評(píng)價(jià) 52
4.5 本章小結(jié) 52
第5章 Ceph客戶端 53
5.1 Librados 53
5.1.1 RadosClient 54
5.1.2 IoCtxImpl 56
5.2 OSDC 56
5.2.1 ObjectOperation 56
5.2.2 op_target 57
5.2.3 Op 57
5.2.4 Striper 58
5.2.5 ObjectCacher 59
5.3 客戶寫操作分析 59
5.3.1 寫操作消息封裝 60
5.3.2 發(fā)送數(shù)據(jù)op_submit 61
5.3.3 對(duì)象尋址_calc_target 61
5.4 Cls 62
5.4.1 模塊以及方法的注冊(cè) 62
5.4.2 模塊的方法執(zhí)行 63
5.4.3 舉例說明 64
5.5 Librbd 65
5.5.1 RBD的相關(guān)的對(duì)象 65
5.5.2 RBD元數(shù)據(jù)操作 66
5.5.3 RBD數(shù)據(jù)操作 67
5.5.4 RBD的快照和克隆 69
5.6 本章小結(jié) 71
第6章 Ceph的數(shù)據(jù)讀寫 72
6.1 OSD模塊靜態(tài)類圖 72
6.2 相關(guān)數(shù)據(jù)結(jié)構(gòu) 73
6.2.1 Pool 74
6.2.2 PG 75
6.2.3 OSDMap 75
6.2.4 OSDOp 77
6.2.5 Object_info_t 77
6.2.6 ObjectState 78
6.2.7 SnapSetContext 79
6.2.8 ObjectContext 79
6.2.9 Session 80
6.3 讀寫操作的序列圖 81
6.4 讀寫流程代碼分析 83
6.4.1 階段1:接收請(qǐng)求 83
6.4.2 階段2:OSD的op_wq處理 85
6.4.3 階段3:PGBackend的處理 95
6.4.4 從副本的處理 95
6.4.5 主副本接收到從副本的應(yīng)答 95
6.5 本章小結(jié) 96
第7章 本地對(duì)象存儲(chǔ) 97
7.1 基本概念介紹 98
7.1.1 對(duì)象的元數(shù)據(jù) 98
7.1.2 事務(wù)和日志的基本概念 98
7.1.3 事務(wù)的封裝 99
7.2 ObjectStore對(duì)象存儲(chǔ)接口 100
7.2.1 對(duì)外接口說明 101
7.2.2 ObjectStore代碼示例 101
7.3 日志的實(shí)現(xiàn) 102
7.3.1 Jouanal對(duì)外接口 102
7.3.2 FileJournal 103
7.4 FileStore的實(shí)現(xiàn) 109
7.4.1 日志的三種類型 110
7.4.2 JournalingObjectStore 111
7.4.3 Filestore的更新操作 112
7.4.4 日志的應(yīng)用 115
7.4.5 日志的同步 115
7.5 omap的實(shí)現(xiàn) 116
7.5.1 omap存儲(chǔ) 117
7.5.2 omap的克隆 118
7.5.3 部分代碼實(shí)現(xiàn)分析 119
7.6 CollectionIndex 120
7.6.1 CollectIndex接口 122
7.6.2 HashIndex 123
7.6.3 LFNIndex 124
7.7 本章小結(jié) 124
第8章 Ceph糾刪碼 125
8.1 EC的基本原理 125
8.2 EC的不同插件 126
8.2.1 RS編碼 126
8.2.2 LRC編碼 126
8.2.3 SHEC編碼 128
8.2.4 EC和副本的比較 129
8.3 Ceph中EC的實(shí)現(xiàn) 129
8.3.1 Ceph中EC的基本概念 129
8.3.2 EC支持的寫操作 130
8.3.3 EC的回滾機(jī)制 131
8.4 EC的源代碼分析 132
8.4.1 EC的寫操作 132
8.4.2 EC的write_full 133
8.4.3 ECBackend 133
8.5 本章小結(jié) 133
第9章 Ceph快照和克隆 134
9.1 基本概念 134
9.1.1 快照和克隆 134
9.1.2 RDB的快照和克隆比較 135
9.2 快照實(shí)現(xiàn)的核心數(shù)據(jù)結(jié)構(gòu) 137
9.3 快照的工作原理 139
9.3.1 快照的創(chuàng)建 139
9.3.2 快照的寫操作 139
9.3.3 快照的讀操作 140
9.3.4 快照的回滾 141
9.3.5 快照的刪除 141
9.4 快照讀寫操作源代碼分析 141
9.4.1 快照的寫操作 141
9.4.2 make_writeable函數(shù) 142
9.4.3 快照的讀操作 145
9.5 本章小結(jié) 146
第10章 Ceph Peering機(jī)制 147
10.1 statechart狀態(tài)機(jī) 147
10.1.1 狀態(tài) 147
10.1.2 事件 148
10.1.3 狀態(tài)響應(yīng)事件 148
10.1.4 狀態(tài)機(jī)的定義 149
10.1.5 context函數(shù) 150
10.1.6 事件的特殊處理 150
10.2 PG狀態(tài)機(jī) 151
10.3 PG的創(chuàng)建過程 151
10.3.1 PG在主OSD上的創(chuàng)建 151
10.3.2 PG在從OSD上的創(chuàng)建 153
10.3.3 PG的加載 154
10.4 PG創(chuàng)建后狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)換 154
10.5 Ceph的Peering過程分析 156
10.5.1 基本概念 156
10.5.2 PG日志 159
10.5.3 Peering的狀態(tài)轉(zhuǎn)換圖 166
10.5.4 pg_info數(shù)據(jù)結(jié)構(gòu) 167
10.5.5 GetInfo 169
10.5.6 GetLog 176
10.5.7 GetMissing 181
10.5.8 Active操作 183
10.5.9 副本端的狀態(tài)轉(zhuǎn)移 187
10.5.10 狀態(tài)機(jī)異常處理 188
10.6 本章小結(jié) 188
第11章 Ceph數(shù)據(jù)修復(fù) 189
11.1 資源預(yù)約 190
11.2 數(shù)據(jù)修復(fù)狀態(tài)轉(zhuǎn)換圖 191
11.3 Recovery過程 193
11.3.1 觸發(fā)修復(fù) 193
11.3.2 ReplicatedPG 195
11.3.3 pgbackend 199
11.4 Backfill過程 205
11.4.1 相關(guān)數(shù)據(jù)結(jié)構(gòu) 205
11.4.2 Backfill的具體實(shí)現(xiàn) 205
11.5 本章小結(jié) 210
第12章 Ceph一致性檢查 211
12.1 端到端的數(shù)據(jù)校驗(yàn) 211
12.2 Scrub概念介紹 213
12.3 Scrub的調(diào)度 213
12.3.1 相關(guān)數(shù)據(jù)結(jié)構(gòu) 214
12.3.2 Scrub的調(diào)度實(shí)現(xiàn) 214
12.4 Scrub的執(zhí)行 217
12.4.1 相關(guān)數(shù)據(jù)結(jié)構(gòu) 217
12.4.2 Scrub的控制流程 219
12.4.3 構(gòu)建ScrubMap 221
12.4.4 從副本處理 224
12.4.5 副本對(duì)比 225
12.4.6 結(jié)束Scrub過程 228
12.5 本章小結(jié) 228
第13章 Ceph自動(dòng)分層存儲(chǔ) 230
13.1 自動(dòng)分層存儲(chǔ)技術(shù) 230
13.2 Ceph分層存儲(chǔ)架構(gòu)和原理 231
13.3 Cache Tier的模式 231
13.4 Cache Tier的源碼分析 234
13.4.1 pool中的Cache Tier數(shù)據(jù)結(jié)構(gòu) 234
13.4.2 HitSet 236
13.4.3 Cache Tier的初始化 237
13.4.4 讀寫路徑上的Cache Tier處理 238
13.4.5 cache的flush和evict操作 245
13.5 本章小結(jié) 250

載地址

下載錯(cuò)誤?【投訴報(bào)錯(cuò)】

Ceph源碼分析 (常濤) 中文pdf掃描版[134MB]

      氣書籍

      載聲明

      ☉ 解壓密碼:www.dbjr.com.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
      ☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
      ☉ 如果這個(gè)軟件總是不能下載的請(qǐng)?jiān)谠u(píng)論中留言,我們會(huì)盡快修復(fù),謝謝!
      ☉ 下載本站資源,如果服務(wù)器暫不能下載請(qǐng)過一段時(shí)間重試!或者多試試幾個(gè)下載地址
      ☉ 如果遇到什么問題,請(qǐng)?jiān)u論留言,我們定會(huì)解決問題,謝謝大家支持!
      ☉ 本站提供的一些商業(yè)軟件是供學(xué)習(xí)研究之用,如用于商業(yè)用途,請(qǐng)購(gòu)買正版。
      ☉ 本站提供的Ceph源碼分析 (常濤) 中文pdf掃描版[134MB] 資源來源互聯(lián)網(wǎng),版權(quán)歸該下載資源的合法擁有者所有。