本書分為理論篇與實踐篇。理論篇講解了Ceph存儲系統(tǒng)的架構(gòu)設(shè)計、對外服務(wù)接口及各個組件的工作原理,各層次可行的解決方案、各方案的優(yōu)劣,以幫助Ceph的使用者更客觀地了解系統(tǒng)全貌;實踐篇探討了在使用Ceph存儲系統(tǒng)時可能遇到的問題及問題規(guī)避思路,介紹了作者團(tuán)隊在使用Ceph時的一些實踐心得,以幫助Ceph的使用者更好地使用Ceph構(gòu)建自己的企業(yè)級存儲集群。
本書適合想了解Ceph分布式存儲系統(tǒng)的初學(xué)者,軟件定義存儲領(lǐng)域的IT人員和存儲系統(tǒng)管理員,通過Ceph開源項目打造軟件定義存儲解決方案的云平臺或存儲系統(tǒng)工程師、架構(gòu)師閱讀。
1.本書內(nèi)容基于中國移動云能力中心云存儲團(tuán)隊對Ceph開源項目的實踐心得,從理論和實踐兩個方面展開,細(xì)致的向讀者介紹了Ceph分布式存儲系統(tǒng)。
2.理論篇講解Ceph存儲系統(tǒng)的工作原理,實踐篇探討Ceph存儲系統(tǒng)時可能遇到的問題以及相應(yīng)的解決方案,理論實踐相結(jié)合,幫助讀者更好的使用Ceph。
3.本書中除了對Ceph現(xiàn)有技術(shù)的客觀介紹講述,還有大量中國移動在實踐過程中案例分享,同時加以思考,提供主觀評價,可為后來者提供使用、研發(fā)思路。
中國移動云能力中心,以云設(shè)施構(gòu)建者、云服務(wù)提供者、云生態(tài)匯聚者為定位,為中國移動通信集團(tuán)內(nèi)31個省公司和專業(yè)公司提供云計算、大數(shù)據(jù)解決方案,并持續(xù)將自有核心能力輸出至政務(wù)、金融、教育、交通、醫(yī)療等各行各業(yè),力爭3年內(nèi)推動中國移動云計算業(yè)務(wù)市場份額進(jìn)入國內(nèi)云服務(wù)商前列陣營。中國移動云能力中心云存儲團(tuán)隊是一支年輕、充滿活力的技術(shù)團(tuán)隊,負(fù)責(zé)移動云大云天權(quán)存儲系統(tǒng)的研發(fā),包括云硬盤、對象存儲、文件存儲等重要的存儲產(chǎn)品,致力于打造行業(yè)內(nèi)突出的數(shù)據(jù)存儲服務(wù),為客戶提供安全、穩(wěn)定的數(shù)據(jù)存儲能力。團(tuán)隊技術(shù)底蘊(yùn)深厚,多次獲得業(yè)內(nèi)獎項。
第 一篇 理論篇
第 1章 分布式存儲概述 3
1.1 存儲系統(tǒng)的架構(gòu)演進(jìn) 4
1.1.1 集中式存儲系統(tǒng) 6
1.1.2 分布式存儲系統(tǒng) 7
1.2 各主流分布式方案對比 10
1.2.1 有中心架構(gòu) 11
1.2.2 無中心架構(gòu) 12
1.3 Ceph的發(fā)展歷程 17
1.3.1 Ceph的起源與發(fā)展 17
1.3.2 Ceph的版本信息 18
1.4 小結(jié) 20
第 2章 Ceph架構(gòu) 21
2.1 數(shù)據(jù)尋址方案 22
2.1.1 查表型尋址方式 22
2.1.2 計算型尋址方式 23
2.1.3 鹿死誰手,猶未可知 24
2.2 Ceph數(shù)據(jù)尋址 24
2.2.1 Ceph尋址流程 25
2.2.2 CRUSH算法因子 27
2.2.3 Bucket隨機(jī)選擇算法 33
2.3 Ceph的歸置組 39
2.3.1 PG數(shù)量的選擇 39
2.3.2 PG的狀態(tài)機(jī) 40
2.4 小結(jié) 45
第3章 接入層 46
3.1 塊存儲RBD 46
3.1.1 塊設(shè)備映射 46
3.1.2 快照與克隆 49
3.1.3 遠(yuǎn)程復(fù)制 53
3.1.4 RBD Cache 58
3.1.5 QoS 62
3.1.6 Burst I/O 72
3.1.7 未來展望 74
3.2 對象存儲RGW 75
3.2.1 對象存儲和S3 75
3.2.2 RGW架構(gòu) 79
3.2.3 I/O路徑 82
3.2.4 元數(shù)據(jù)/數(shù)據(jù)布局 84
3.2.5 元數(shù)據(jù)/數(shù)據(jù)同步 100
3.2.6 未來展望 108
3.3 文件存儲CephFS 110
3.3.1 MDS設(shè)計原理 110
3.3.2 CephFS訪問方式 114
3.3.3 CephFS高級特性 118
3.3.4 未來展望 125
第4章 存儲層 127
4.1 Monitor 128
4.1.1 背景 128
4.1.2 具體實現(xiàn) 128
4.1.3 一致性算法與Paxos介紹 130
4.1.4 小結(jié) 138
4.2 OSD 138
4.2.1 單機(jī)存儲引擎 138
4.2.2 網(wǎng)絡(luò)通信機(jī)制 147
4.2.3 流控機(jī)制 153
4.2.4 安全性 154
第二篇 實踐篇
第5章 解決方案 159
5.1 集群管理與監(jiān)控 160
5.1.1 當(dāng)前Ceph存儲系統(tǒng)的故障抵御能力 160
5.1.2 亞健康問題 161
5.1.3 服務(wù)器監(jiān)控交換機(jī)異常 163
5.1.4 性能管理 164
5.2 性能與成本 165
5.2.1 低成本冷存儲 166
5.2.2 高性能存儲 170
5.2.3 緩存層 172
5.3 ARM服務(wù)器存儲集群調(diào)優(yōu)實踐 179
5.3.1 華為泰山ARM服務(wù)器簡介 179
5.3.2 性能優(yōu)化方向 179
5.3.3 小結(jié) 187
5.4 負(fù)載均衡方案 187
5.4.1 常用負(fù)載均衡方案介紹 187
5.4.2 負(fù)載均衡方案實踐 189
5.5 RGW GC回收與容量調(diào)度 191
5.5.1 概述 191
5.5.2 涉及的概念 191
5.5.3 垃圾回收調(diào)度的設(shè)計和實現(xiàn) 192
5.6 OpenStack-Cinder-Backup Driver優(yōu)化 194
5.6.1 OpenStack-Cinder-Backup介紹 194
5.6.2 OpenStack-Cinder-Backup優(yōu)化 195
5.6.3 小結(jié) 200
第6章 常見問題 201
6.1 集群容量問題 202
6.1.1 集群容量丟失問題 202
6.1.2 PG均衡問題 217
6.2 時間調(diào)整問題 222
6.2.1 時鐘同步要求 222
6.2.2 Ceph心跳檢測 223
6.2.3 管理系統(tǒng)時間同步邏輯 225
6.3 大規(guī)模應(yīng)用場景參數(shù)配置問題 228
6.3.1 PG分裂問題 228
6.3.2 對象存儲元數(shù)據(jù)集群shard分片問題 230
6.3.3 BlueStore rocksdb slow disk space問題 235
附錄 技術(shù)術(shù)語表 239