Ceph之RADOS设计原理与实现

Ceph之RADOS设计原理与实现

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

系统剖析RADOS的设计原理与具体实现,迅速掌握Ceph的核心设计理念与高级应用技巧。

内容简介

本书是继《Ceph设计原理与实现》之后,中兴通讯Clove团队在Ceph领域的又一全新力作。Clove团队是Ceph开源社区国内最负盛名的组织贡献者之一,自Jewel版起,连续4个版本代码贡献量位列世界前三。目前该团队拥有社区技术委员会成员一名,Ceph Member三名。鉴于Clove团队在Ceph不断发展与壮大过程中做出的杰出贡献,创始人Sage Weil先生再次为本书亲自作序。存储是云计算的基石,Ceph是开源分布式软件定义存储解决方案中的领头羊。本书以大量存储技术的基本原理(例如分布式一致性、文件系统等等)为主线,系统剖析了Ceph核心组件RADOS的设计原理与具体实现。通过阅读本书可以掌握Ceph的核心设计理念与高级应用技巧,从而快速提升自身对于Ceph的研发与运维能力。

作者简介

作者谢型果,中兴通讯软件工程师,6 年存储研发经验,精通本地文件系统ZFS。2014年开始研究Ceph,目前是 Ceph 开源社区技术委员会成员兼 Ceph Member,主要研究方向为 RADOS。

章节目录

版权信息

序1

序2

序3

前言

第1章 一生万物——RADOS导论

1.1 RADOS概述

1.2 存储池与PG

1.3 对象演进与排序

1.4 stable_mod与客户端寻址

1.5 PG分裂与集群扩容

1.6 总结和展望

第2章 计算寻址之美与数据平衡之殇——CRUSH

2.1 抽签算法

2.2 CRUSH算法详解

2.2.1 集群的层级化描述——cluster map

2.2.2 数据分布策略——placement rule

2.3 调制CRUSH

2.3.1 编辑CRUSH map

2.3.2 定制CRUSH规则

2.4 数据重平衡

2.4.1 reweight

2.4.2 weight-set

2.4.3 upmap

2.4.4 balancer

2.5 总结和展望

第3章 集群的大脑——Monitor

3.1 集群表OSDMap

3.2 集群管理

3.2.1 OSD管理

3.2.2 存储池管理

3.2.3 告警管理

3.3 总结和展望

第4章 存储的基石——OSD

4.1 OSD概述

4.1.1 集群管理

4.1.2 网络通信

4.1.3 公共服务

4.2 OSD上电

4.3 故障检测

4.4 空间管理

4.5 总结和展望

第5章 高效本地对象存储引擎——BlueStore

5.1 设计原理

5.2 磁盘数据结构

5.2.1 PG

5.2.2 对象

5.3 缓存机制

5.3.1 概述

5.3.2 实现

5.4 磁盘空间管理

5.4.1 概述

5.4.2 BitmapFreelistManager

5.4.3 BitmapAllocator

5.5 BlueFS

5.5.1 概述

5.5.2 磁盘数据结构

5.5.3 块设备

5.6 实现原理

5.6.1 mkfs

5.6.2 mount

5.6.3 read

5.6.4 write

5.7 使用指南

5.7.1 部署BlueStore

5.7.2 配置参数

5.8 总结和展望

第6章 移动的对象载体——PG

6.1 基本概念与术语

6.2 读写流程

6.2.1 消息接收与分发

6.2.2 do_request

6.2.3 do_op

6.2.4 execute_ctx

6.3 状态迁移

6.3.1 状态机概述

6.3.2 创建PG

6.3.3 Peering

6.4 总结和展望

第7章 在线数据恢复——Recovery和Backfill

7.1 Recovery

7.1.1 资源预留

7.1.2 对象修复

7.1.3 增量Recovery和异步Recovery

7.2 Backfill

7.3 总结和展望

第8章 数据正确性与一致性的守护者——Scrub

8.1 Scrub的指导思想

8.2 Scrub流程详解

8.2.1 资源预留

8.2.2 范围界定

8.2.3 对象扫描

8.2.4 副本比对

8.2.5 统计更新与自动修复

8.3 Scrub抢占

8.4 总结和展望

第9章 基于dmClock的分布式流控策略

9.1 概述

9.2 dmClock基本原理

9.2.1 mClock

9.2.2 dmClock

9.3 dmClock算法实现

9.3.1 I/O请求入队

9.3.2 I/O请求出队

9.3.3 实例分析

9.4 在Ceph中的应用实践

9.4.1 client的界定

9.4.2 支持带宽限制

9.4.3 存储卷的QoS

9.4.4 集群流控策略

9.5 总结和展望

第10章 纠删码原理与实践

10.1 RAID技术概述

10.2 RS-RAID和Jerasure

10.2.1 计算校验和

10.2.2 数据恢复

10.2.3 算术运算

10.2.4 缺陷与改进

10.2.5 Jerasure

10.3 纠删码在Ceph中的应用

10.3.1 术语

10.3.2 新写

10.3.3 读

10.3.4 覆盖写

10.3.5 日志

10.3.6 Scrub

10.4 总结和展望

Ceph之RADOS设计原理与实现是2019年由机械工业出版社华章分社出版,作者严军。

得书感谢您对《Ceph之RADOS设计原理与实现》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Altium Designer 原理图与PCB设计 电子书
全书共分11章,介绍了AltiumDesigner15基本操作,原理图的设计基础、绘制和编辑方法,层次化原理图设计,PCB设计基础,PCB设计环境、基本操作和编辑方法,以及电路仿真、信号完整性分析、元器件绘制的基本方法。
一个64位操作系统的设计与实现 电子书
基于Intel Core i7处理器的64位多核操作系统,引入诸多Linux内核的设计精髓。
产业互联网平台突围:在线支付系统设计与实现 电子书
从规划设计、系统架构、功能建设、渠道选择、项目实施和运营推广等全流程系统介绍产业互联网平台在线支付的设计和实现。
Photoshop+CorelDRAW 字体设计与创意——草图/实现/包装(微课版) 电子书
几乎所有的平面设计都会用到文字,不同的文字造型传达着不同的含义,因此,“字体设计”也是平面设计专业的必修课程之一。为帮助初学者快速掌握字体设计的方法,本书将结合文字的“形”和“意”,使用CorelDRAW和Photoshop进行字体设计。全书分为10章,包含40个不同类型的字体设计案例,每个案例都涉及分析设计思路、拟定草稿构思、讲解案例难点、分解操作步骤等内容,内容包括文字基础、字体设计、原则规范
分布式对象存储——原理、架构及Go语言实现 电子书
适读人群 :本书适合从事云存储方面工作的工程师或架构师,也适合想要学习和实现分布式对象存储的读者。   赠送价值249元的云存储专家视频课程   掌握云存储理论,动手搭建分布式对象存储架构   云存储已经是大家司空见惯的一种网络服务了,比如大家常用的百度云盘、美亚S3、微软的OneDrive、苹果公司的iCloud和谷歌的Google Cloud等。云存储背后的原理是怎样的,又是如何实现的呢?   本书完全从云存储的需求出发讲述对象存储的原理,并且带领读者使用Go语言编程,循序渐进、从无到有地建立起一个分布式对象存储的架构。也就是说,本书首先介绍为什么要这么做,然后解释怎么做。   本书适合云存储方面的研究者、工程师或架构师阅读,也可以供对云存储技术感兴趣的读者参考。在读完本书之后,你将较为深入地理解对象存储服务,甚至能够实现自己的对象存储服务。   本书包括以下内容:    对象存储简介;    分布式系统原理;    元数据以及元数据服务;    数据校验和去重;    数据冗余和即时修复;    断点续传;    数据压缩;    数据维护。