来源书籍
Ceph分布式存储实战
分布式存储产品实战类
1. **信息浓度整体偏低**:全书13章中有7章(第5、6、7、8[部分]、9[部分]、12、13[部分])以"怎么做"
为主——例如第5章可视化管理Calamari通篇是安装步骤和UI截图介绍;第6章用OpenMPI蒙特卡洛算例
演示如何在Ceph FS上跑高性能计算,不解释Ceph本身的设计取舍;第7章讲KVM/OpenStack/CloudStack/
ZStack对接RBD,几乎全是yum安装、XML配置片段;第12章生产案例(Nginx读写分离、HLS点播)也是
直接给配置代码,没有展开权衡分析。
2. **稳定性很低**:书中大量内容绑定Ceph 2016年前后的Jewel(v10.2.0)/Hammer(0.94)版本细节,
例如Calamari——一款Red Hat在2014年开源、如今业界已基本弃用、被ceph-mgr dashboard等工具取代
的监控面板,整整一章的安装操作现在已无参考价值;书中RGW异地同步一节明确写"以下概念及操作均
基于Ceph 0.94版本",Region/Zone这套配置模型后来也被Ceph的Multisite Zonegroup方案取代。
3. **局部高价值区域**:第1~3章(Ceph设计思想、RADOS分层架构、CRUSH算法原理)、第4章(RBD/
KRBD/RGW等访问接口的架构差异)、第8.2.1节(异地同步的轮询比对原理)、第9.3节(NUMA/超线程/
SSD Journal为何影响性能的机制性解释)、第10章(一致性Hash与CRUSH的定量对比、故障域扩大如何
降低数据丢失概率)、第11章(缓冲池写回/读转发模式的取舍、纠删码与副本的容量-开销权衡)、
第13章(PG数规划公式的设计意图、三副本靠版本比较解决冲突而两副本无法保证最新的原理)信息
浓度和可迁移性明显更高,这些内容不受"实战手册"整体定位影响,会在阶段三按"概念类内容强制
生卡"规则单独提炼。
类别清单覆盖
8/8
已覆盖 8
补充生成 0
未覆盖 0
全书概览
Ceph分布式存储实战 (云计算与虚拟化技术丛书)
Skill版本:v1
类别:分布式存储产品实战类
评级结论:速查手册(低信息浓度 + 低稳定性)
理由:
- 信息浓度整体偏低:全书13章中有7章(第5、6、7、8[部分]、9[部分]、12、13[部分])以”怎么做” 为主——例如第5章可视化管理Calamari通篇是安装步骤和UI截图介绍;第6章用OpenMPI蒙特卡洛算例 演示如何在Ceph FS上跑高性能计算,不解释Ceph本身的设计取舍;第7章讲KVM/OpenStack/CloudStack/ ZStack对接RBD,几乎全是yum安装、XML配置片段;第12章生产案例(Nginx读写分离、HLS点播)也是 直接给配置代码,没有展开权衡分析。
- 稳定性很低:书中大量内容绑定Ceph 2016年前后的Jewel(v10.2.0)/Hammer(0.94)版本细节, 例如Calamari——一款Red Hat在2014年开源、如今业界已基本弃用、被ceph-mgr dashboard等工具取代 的监控面板,整整一章的安装操作现在已无参考价值;书中RGW异地同步一节明确写”以下概念及操作均 基于Ceph 0.94版本”,Region/Zone这套配置模型后来也被Ceph的Multisite Zonegroup方案取代。
- 局部高价值区域:第1~3章(Ceph设计思想、RADOS分层架构、CRUSH算法原理)、第4章(RBD/ KRBD/RGW等访问接口的架构差异)、第8.2.1节(异地同步的轮询比对原理)、第9.3节(NUMA/超线程/ SSD Journal为何影响性能的机制性解释)、第10章(一致性Hash与CRUSH的定量对比、故障域扩大如何 降低数据丢失概率)、第11章(缓冲池写回/读转发模式的取舍、纠删码与副本的容量-开销权衡)、 第13章(PG数规划公式的设计意图、三副本靠版本比较解决冲突而两副本无法保证最新的原理)信息 浓度和可迁移性明显更高,这些内容不受”实战手册”整体定位影响,会在阶段三按”概念类内容强制 生卡”规则单独提炼。
章节进度追踪表
| 章节号 | 章节标题 | 精读/略读 | 状态 | 卡片数 |
|---|---|---|---|---|
| - | 本书赞誉/序/前言 | 略读 | done | 0 |
| 1 | 初识Ceph | 精读 | done | 2 |
| 2 | 存储基石RADOS | 精读 | done | 4 |
| 3 | 智能分布CRUSH | 精读 | done | 6 |
| 4 | 三大存储访问类型 | 精读 | done | 6 |
| 5 | 可视化管理Calamari | 略读 | done | 0 |
| 6 | 文件系统——高性能计算与大数据 | 略读 | done | 0 |
| 7 | 块存储——虚拟化与数据库 | 略读 | done | 0 |
| 8 | 对象存储——云盘与RGW异地灾备 | 精读 | done | 1 |
| 9 | Ceph硬件选型、性能测试与优化 | 精读 | done | 6 |
| 10 | 自定义CRUSH | 精读 | done | 4 |
| 11 | 缓冲池与纠删码 | 精读 | done | 5 |
| 12 | 生产环境应用案例 | 略读 | done | 0 |
| 13 | Ceph运维与排错 | 精读 | done | 5 |
划分理由
- 第1~4章(精读):Ceph设计哲学(去中心化、发挥存储节点自身算力)、RADOS分层架构与 LIBRADOS本地API模型、CRUSH的三大设计目标与Object→PG→OSD→Pool映射链条、PG与PGP的区别、 RBD的KRBD/librbd双路径与RGW的S3/Swift兼容网关架构,均为实质性讲解的架构/概念内容,即使 混杂大量安装步骤仍需精读筛选。
- 第5~7章(略读):Calamari安装与UI操作、Ceph FS挂载后跑HPC/大数据应用的命令演示、 KVM/OpenStack/CloudStack/ZStack对接RBD的配置步骤,均为特定版本工具的操作指南,没有触及 Ceph自身设计原理。
- 第8章(精读):8.2.1节讲清楚了RGW异地同步”依靠同步代理轮询比对多实例同步日志、按 Region/Zone逻辑关系同步差异数据”的原理,属于实质性机制讲解,其余小节(OwnCloud整合、 部署实战)仍按操作步骤处理,不生卡。
- 第9章(精读):9.1⁄9.2硬件选型建议偏经验推荐,但9.3性能调优部分解释了NUMA为何影响 OSD进程、超线程和关闭节能为何提升CPU利用率、SSD Journal为何改善延迟而非提升绝对性能等 机制性原因,符合”揭示底层机制”的高浓度标准。
- 第10章(精读):用一致性Hash与CRUSH的定量对比、虚拟节点解决负载不均、故障域大小与 PG丢失概率的关系模型,展开了完整的设计权衡分析,是全书信息浓度最高的章节之一。
- 第11章(精读):缓冲池写回模式与读取转发模式的适用场景取舍、纠删码k+m结构与副本方案 的容量-计算开销对比,都是”讨论多方案权衡”的高浓度内容。
- 第12章(略读):NFS导出、Windows客户端挂载、OpenStack Manila对接、Cinder Multi-Backend、 Nginx读写分离、HLS点播,均为具体场景的配置recipe,未展开设计原理分析。
- 第13章(精读):PG数规划公式为何取2的幂次、故障恢复为何局限在同一故障域内、三副本靠 对象版本比较解决冲突而两副本无法确定最新版本等,是有迁移价值的方法论内容,混杂在大量 排错命令中,需精读筛选。
待关联术语
| 术语名 | 出现章节 | 一句话语境 |
|---|---|---|
| Cinder | 1 | OpenStack的块存储项目,2012年Ceph进入该项目成为存储驱动,书中未展开Cinder自身机制 |
| Paxos | 2 | Ceph Monitor集群用Paxos实例做一致性决策/选主,书中未展开算法本身如何达成一致 |
| SHEC纠删码插件 | 11 | 书中仅给出官方文档链接,未展开SHEC相比Jerasure/ISA-L/LRC的具体设计差异 |
| ISA-L纠删码插件 | 11 | 书中提及Intel的ISA-L用汇编+指令集优化降低编解码开销,但未展开具体优化手法 |
引用文献
| 标题 | 类型 | 出现章节 | 一句话语境 |
|---|---|---|---|
| Eucalyptus | 框架 | 1 | 与OpenStack/CloudStack/ZStack并列提及的IaaS云平台软件,书中未展开 |
| Ceph起源论文(Sage Weil,2006 OSDI) | 论文 | 1 | 书中提及Sage在OSDI发表了介绍Ceph的论文并附下载链接,但未展开论文内容 |
| Amazon Dynamo | 框架 | 3 | 书中提及Dynamo键值存储系统采用一致性Hash并做了很多优化,但未展开具体优化内容 |
| Accelio | 框架 | 9 | 书中简单提及是运行在RDMA上的高性能异步消息与RPC库,Ceph曾用它实现xio消息机制,但未深入展开其内部设计,且该实验特性目前已废弃 |
类别清单核对(分布式存储产品实战类)
| 维度 | 覆盖状态 | 关联卡片标题或未覆盖理由 |
|---|---|---|
| 核心架构与组件职责 | 已覆盖 | [[三大核心组件的职责边界]]、[[四层架构的能力递进]] |
| 数据分布/寻址算法 | 已覆盖 | [[PG作为中间寻址层]]、[[CRUSH优于普通Hash的两个特性]]、[[一致性Hash的负载不均与虚拟节点]] |
| 冗余策略权衡 | 已覆盖 | [[纠删码的k+m结构与容量权衡]]、[[LRC用本地化分组降低恢复读放大]] |
| 故障域与容错设计 | 已覆盖 | [[ClusterMap的树状故障域]]、[[故障恢复为何局限在同一故障域]]、[[PG丢失概率的定量模型]]、[[副本数不能超过故障域数量]] |
| 硬件/性能调优的机制性原因 | 已覆盖 | [[BIOS调整为何影响OSD性能]]、[[SSD共享比例与故障半径的权衡]]、[[上下文切换是网络IO延迟的根源]]、[[队列深度为何不是越大越好]] |
| 与上层生态的集成方式与边界 | 已覆盖 | [[RBD两条访问路径绑定不同缓存层]]、[[RGW三种兼容接口的分工]]、[[缓冲池技术的适用边界]] |
| 运维排错方法论 | 已覆盖 | [[OSD与PG的状态模型]]、[[计划内维护要先抑制自愈机制]]、[[分布式系统为何对时钟漂移敏感]]、[[存储系统的排队模型]] |
| 产品演进与替代趋势 | 已覆盖 | 本书2016年前后基于Jewel/Hammer版本,书中Calamari、RGW Region/Zone配置模型现已分别被ceph-mgr dashboard、Multisite Zonegroup取代,详见本文件顶部”评级结论”与[[Journal先写机制的取舍]]中对BlueStore取代FileStore的说明 |
章节与卡片
01 初识Ceph
- 去中心化设计的两个动机 普通读书笔记卡
- 三大核心组件的职责边界 普通读书笔记卡
02 存储基石RADOS
- 四层架构的能力递进 普通读书笔记卡
- Monitor为何取奇数个 普通读书笔记卡
- Journal先写机制的取舍 普通读书笔记卡
- 主从副本的自愈机制 普通读书笔记卡
03 智能分布CRUSH
- 数据分布算法的三个设计目标 普通读书笔记卡
- 条带化的三要素 普通读书笔记卡
- PG作为中间寻址层 普通读书笔记卡
- CRUSH优于普通Hash的两个特性 普通读书笔记卡
- PG与PGP的区别 普通读书笔记卡
- ClusterMap的树状故障域 普通读书笔记卡
04 三大存储访问类型
- 元数据与数据分离的MDS模型 普通读书笔记卡
- 动态子树分区的MDS负载均衡 普通读书笔记卡
- RBD两条访问路径绑定不同缓存层 普通读书笔记卡
- RBD克隆的写时复制分层机制 普通读书笔记卡
- RGW三种兼容接口的分工 普通读书笔记卡
- S3对象存储的扁平数据模型 普通读书笔记卡
08 对象存储——云盘与RGW异地灾备
- RGW异地同步的目标与机制 普通读书笔记卡
09 Ceph硬件选型、性能测试与优化
- BIOS调整为何影响OSD性能 普通读书笔记卡
- SSD共享比例与故障半径的权衡 普通读书笔记卡
- 上下文切换是网络IO延迟的根源 普通读书笔记卡
- 存储系统的排队模型 普通读书笔记卡
- 队列深度为何不是越大越好 普通读书笔记卡
- 寻址空间通过空间局部性影响IOPS 普通读书笔记卡
10 自定义CRUSH
- 一致性Hash的负载不均与虚拟节点 普通读书笔记卡
- 故障恢复为何局限在同一故障域内 普通读书笔记卡
- PG丢失概率的定量模型 普通读书笔记卡
- 两种冷热混合存储设计模式 普通读书笔记卡
11 缓冲池与纠删码
- 缓冲池的写回与读转发模式 普通读书笔记卡
- 纠删码的k+m结构与容量权衡 普通读书笔记卡
- LRC用本地化分组降低恢复读放大 普通读书笔记卡
- 布隆过滤器的快速不精确查找 普通读书笔记卡
- 缓冲池技术的适用边界 普通读书笔记卡
13 Ceph运维与排错
- OSD与PG的状态模型 普通读书笔记卡
- 公网与集群网分离的原理 普通读书笔记卡
- 计划内维护要先抑制自愈机制 普通读书笔记卡
- 副本数不能超过故障域数量 普通读书笔记卡
- 分布式系统为何对时钟漂移敏感 普通读书笔记卡
相关主题
暂无公开主题。