图书介绍

Ceph源码分析PDF|Epub|txt|kindle电子书版本网盘下载

Ceph源码分析
  • 常涛编著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111552079
  • 出版时间:2016
  • 标注页数:250页
  • 文件大小:23MB
  • 文件页数:269页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Ceph源码分析PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 Ceph整体架构1

1.1 Ceph的发展历程1

1.2 Ceph的设计目标2

1.3 Ceph基本架构图2

1.4 Ceph客户端接口3

1.4.1 RBD4

1.4.2 CephFS4

1.4.3 RadosGW4

1.5 RADOS6

1.5.1 Monitor6

1.5.2 对象存储7

1.5.3 pool和PG的概念7

1.5.4 对象寻址过程8

1.5.5 数据读写过程9

1.5.6 数据均衡10

1.5.7 Peering11

1.5.8 Recovery和Backfill11

1.5.9 纠删码11

1.5.10 快照和克隆12

1.5.11 Cache Tier12

1.5.12 Scrub13

1.6 本章小结13

第2章 Ceph通用模块14

2.1 Object14

2.2 Buffer16

2.2.1 buffer::raw16

2.2.2 buffer::ptr17

2.2.3 buffer::list17

2.3 线程池19

2.3.1 线程池的启动20

2.3.2 工作队列20

2.3.3 线程池的执行函数21

2.3.4 超时检查22

2.3.5 ShardedThreadPool22

2.4 Finisher23

2.5 Throttle23

2.6 SafeTimer24

2.7 本章小结25

第3章 Ceph网络通信26

3.1 Ceph网络通信框架26

3.1.1 Message27

3.1.2 Connection29

3.1.3 Dispatcher29

3.1.4 Messenger29

3.1.5 网络连接的策略30

3.1.6 网络模块的使用30

3.2 Simple实现32

3.2.1 SimpleMessager33

3.2.2 Accepter33

3.2.3 DispatchQueue33

3.2.4 Pipe34

3.2.5 消息的发送35

3.2.6 消息的接收36

3.2.7 错误处理37

3.3 本章小结38

第4章 CRUSH数据分布算法39

4.1 数据分布算法的挑战39

4.2 CRUSH算法的原理40

4.2.1 层级化的Cluster Map40

4.2.2 Placement Rules42

4.2.3 Bucket随机选择算法46

4.3 代码实现分析49

4.3.1 相关的数据结构49

4.3.2 代码实现50

4.4 对CRUSH算法的评价52

4.5 本章小结52

第5章 Ceph客户端53

5.1 Librados53

5.1.1 RadosClient54

5.1.2 IoCtxImpl56

5.2 OSDC56

5.2.1 ObjectOperation56

5.2.2 op_target57

5.2.3 Op57

5.2.4 Striper58

5.2.5 ObjectCacher59

5.3 客户写操作分析59

5.3.1 写操作消息封装60

5.3.2 发送数据op_submit61

5.3.3 对象寻址_calc_target61

5.4 Cls62

5.4.1 模块以及方法的注册62

5.4.2 模块的方法执行63

5.4.3 举例说明64

5.5 Librbd65

5.5.1 RBD的相关的对象65

5.5.2 RBD元数据操作66

5.5.3 RBD数据操作67

5.5.4 RBD的快照和克隆69

5.6 本章小结71

第6章 Ceph的数据读写72

6.1 OSD模块静态类图72

6.2 相关数据结构73

6.2.1 Pool74

6.2.2 PG75

6.2.3 OSDMap75

6.2.4 OSDOp77

6.2.5 Object_info_t77

6.2.6 ObjectState78

6.2.7 SnapSetContext79

6.2.8 ObjectContext79

6.2.9 Session80

6.3 读写操作的序列图81

6.4 读写流程代码分析83

6.4.1 阶段1:接收请求83

6.4.2 阶段2:OSD的op_wq处理85

6.4.3 阶段3:PGBackend的处理95

6.4.4 从副本的处理95

6.4.5 主副本接收到从副本的应答95

6.5 本章小结96

第7章 本地对象存储97

7.1 基本概念介绍98

7.1.1 对象的元数据98

7.1.2 事务和日志的基本概念98

7.1.3 事务的封装99

7.2 ObjectStore对象存储接口100

7.2.1 对外接口说明101

7.2.2 ObjectStore代码示例101

7.3 日志的实现102

7.3.1 Jouanal对外接口102

7.3.2 FileJournal103

7.4 FileStore的实现109

7.4.1 日志的三种类型110

7.4.2 JournalingObjectStore111

7.4.3 Filestore的更新操作112

7.4.4 日志的应用115

7.4.5 日志的同步115

7.5 omap的实现116

7.5.1 omap存储117

7.5.2 omap的克隆118

7.5.3 部分代码实现分析119

7.6 CollectionIndex120

7.6.1 CollectIndex接口122

7.6.2 HashIndex123

7.6.3 LFNIndex124

7.7 本章小结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的实现129

8.3.1 Ceph中EC的基本概念129

8.3.2 EC支持的写操作130

8.3.3 EC的回滚机制131

8.4 EC的源代码分析132

8.4.1 EC的写操作132

8.4.2 EC的write_full133

8.4.3 ECBackend133

8.5 本章小结133

第9章 Ceph快照和克隆134

9.1 基本概念134

9.1.1 快照和克隆134

9.1.2 RDB的快照和克隆比较135

9.2 快照实现的核心数据结构137

9.3 快照的工作原理139

9.3.1 快照的创建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函数142

9.4.3 快照的读操作145

9.5 本章小结146

第10章 Ceph Peering机制147

10.1 statechart状态机147

10.1.1 状态147

10.1.2 事件148

10.1.3 状态响应事件148

10.1.4 状态机的定义149

10.1.5 context函数150

10.1.6 事件的特殊处理150

10.2 PG状态机151

10.3 PG的创建过程151

10.3.1 PG在主OSD上的创建151

10.3.2 PG在从OSD上的创建153

10.3.3 PG的加载154

10.4 PG创建后状态机的状态转换154

10.5 Ceph的Peering过程分析156

10.5.1 基本概念156

10.5.2 PG日志159

10.5.3 Peering的状态转换图166

10.5.4 pg_info数据结构167

10.5.5 GetInfo169

10.5.6 GetLog176

10.5.7 GetMissing181

10.5.8 Active操作183

10.5.9 副本端的状态转移187

10.5.10 状态机异常处理188

10.6 本章小结188

第11章 Ceph数据修复189

11.1 资源预约190

11.2 数据修复状态转换图191

11.3 Recovery过程193

11.3.1 触发修复193

11.3.2 ReplicatedPG195

11.3.3 pgbackend199

11.4 Backfill过程205

11.4.1 相关数据结构205

11.4.2 Backfill的具体实现205

11.5 本章小结210

第12章 Ceph一致性检查211

12.1 端到端的数据校验211

12.2 Scrub概念介绍213

12.3 Scrub的调度213

12.3.1 相关数据结构214

12.3.2 Scrub的调度实现214

12.4 Scrub的执行217

12.4.1 相关数据结构217

12.4.2 Scrub的控制流程219

12.4.3 构建ScrubMap221

12.4.4 从副本处理224

12.4.5 副本对比225

12.4.6 结束Scrub过程228

12.5 本章小结228

第13章 Ceph自动分层存储230

13.1 自动分层存储技术230

13.2 Ceph分层存储架构和原理231

13.3 Cache Tier的模式231

13.4 Cache Tier的源码分析234

13.4.1 pool中的Cache Tier数据结构234

13.4.2 HitSet236

13.4.3 Cache Tier的初始化237

13.4.4 读写路径上的Cache Tier处理238

13.4.5 cache的flush和evict操作245

13.5 本章小结250

热门推荐