




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 Ceph分布式存儲(chǔ)架構(gòu)深度分析本文主要討論Ceph架構(gòu),同時(shí)對(duì)Ceph生態(tài)、特性和企業(yè)級(jí)存儲(chǔ)進(jìn)行對(duì)比分析。Ceph使用C+語(yǔ)言開發(fā),遵循LGPL協(xié)議開源。Sage Weil(Ceph論文發(fā)表者)于2011年創(chuàng)立了以Inktank公司主導(dǎo)Ceph的開發(fā)和社區(qū)維護(hù)。2014年Redhat收購(gòu)inktank公司,并發(fā)布Inktank Ceph企業(yè)版(ICE)軟件,業(yè)務(wù)場(chǎng)景聚焦云、備份和歸檔,支持對(duì)象和塊存儲(chǔ)應(yīng)用。從此出現(xiàn)Ceph開源社區(qū)版本和Redhat企業(yè)版。Cehp的基礎(chǔ)服務(wù)架構(gòu) Cehp的基礎(chǔ)服務(wù)架構(gòu)主要包括了Object Storage Device(OSD),Monitor和MDS。基于
2、此,Ceph提供了Librados原生對(duì)象基礎(chǔ)庫(kù)、Librbd塊存儲(chǔ)庫(kù)、Librgw基于S3和Swift兼容的對(duì)象庫(kù)和Libceph文件系統(tǒng)庫(kù)。 OSD(Object Storage Device)負(fù)責(zé)存儲(chǔ)數(shù)據(jù),處理數(shù)據(jù)復(fù)制、數(shù)據(jù)恢復(fù)、數(shù)據(jù)再均衡以及通過心跳機(jī)制監(jiān)測(cè)其它OSD狀況并報(bào)告給Ceph Monitors。 Monitor負(fù)責(zé)監(jiān)控集群狀態(tài),包括監(jiān)控自身狀態(tài)、集群OSD狀態(tài)、Placement Group(存儲(chǔ)組織和位置映射)狀態(tài)、CRUSH狀態(tài)(Controlled Replication Under Scalable Hashing,一種偽隨機(jī)數(shù)據(jù)分布算法)。同時(shí),Monitor還會(huì)
3、記錄它們的每一個(gè)歷史狀態(tài)改變版本信息,以確定集群該遵循哪個(gè)版本。 MDS負(fù)責(zé)文件系統(tǒng)的元數(shù)據(jù)存儲(chǔ)和管理,也就是如前所說,塊存儲(chǔ)和對(duì)象存儲(chǔ)服務(wù)是不需要這個(gè)模塊的。MDS負(fù)責(zé)提供標(biāo)準(zhǔn)的POSIX文件訪問接口。 搭建一臺(tái)Ceph系統(tǒng)至少需要1個(gè)Ceph Monitor和2個(gè)Ceph OSD邏輯角色,而Ceph Metadata server僅僅是運(yùn)行CephFS時(shí)存儲(chǔ)文件元數(shù)據(jù)。但在物理部署上,這些邏輯角色可以運(yùn)行在同一臺(tái)物理機(jī)上的。Ceph存儲(chǔ)數(shù)據(jù)默認(rèn)是2副本拷貝,所以不管是提供Object、Block還是Filesystem服務(wù),最小的Ceph系統(tǒng)需要2臺(tái)OSD存儲(chǔ)服務(wù)器。Ceph的軟件體系架構(gòu)
4、1、基礎(chǔ)存儲(chǔ)系統(tǒng)RADOS RADOS(Reliable, Autonomic、Distributed Object Store),這一層本身就是一個(gè)完整的對(duì)象存儲(chǔ)系統(tǒng),包括Cehp的基礎(chǔ)服務(wù)(MDS,OSD,Monitor),所有存儲(chǔ)在Ceph系統(tǒng)中的用戶數(shù)據(jù)事實(shí)上最終都是由這一層來存儲(chǔ)的。而Ceph的高可靠、高可擴(kuò)展、高性能、高自動(dòng)化等等特性本質(zhì)上也是由這一層所提供的。因此,理解RADOS是理解Ceph的基礎(chǔ)與關(guān)鍵。 RADOS在物理形態(tài)上由大量的存儲(chǔ)設(shè)備節(jié)點(diǎn)組成,每個(gè)節(jié)點(diǎn)擁有自己的硬件資源(CPU、內(nèi)存、硬盤、網(wǎng)絡(luò)),并運(yùn)行著操作系統(tǒng)和文件系統(tǒng)。2、基礎(chǔ)庫(kù)librados 這一層的功能是
5、對(duì)RADOS進(jìn)行抽象和封裝,并向上層提供不同API,以便直接基于RADOS進(jìn)行原生對(duì)象或上層對(duì)象、塊和文件應(yīng)用開發(fā)。特別要注意的是,RADOS是一個(gè)對(duì)象存儲(chǔ)系統(tǒng),因此,基于librados實(shí)現(xiàn)的API也只是針對(duì)對(duì)象存儲(chǔ)功能的。 RADOS所提供的原生librados API包括C和C+兩種。Librados在部署上和基于其上開發(fā)的應(yīng)用位于同一臺(tái)機(jī)器。應(yīng)用調(diào)用本機(jī)上的librados API,再由后者通過socket與RADOS集群中的節(jié)點(diǎn)通信并完成各種操作。3、高層存儲(chǔ)應(yīng)用接口 這一層包括了RADOS GW(RADOS Gateway)、 RBD(Reliable Block Device)和
6、Ceph FS(Ceph File System)三個(gè)部分,其作用是在librados庫(kù)的基礎(chǔ)上提供抽象層次更高、更便于應(yīng)用或客戶端使用的上層接口。 RADOSGW是一個(gè)提供與Amazon S3和Swift兼容的RESTful API的Gateway,以供相應(yīng)的對(duì)象存儲(chǔ)應(yīng)用開發(fā)使用。RADOS GW提供的API抽象層次更高,但功能則不如librados強(qiáng)大。因此,開發(fā)者應(yīng)針對(duì)自己的需求選擇使用。 RBD則提供了一個(gè)標(biāo)準(zhǔn)的塊設(shè)備接口,常用于在虛擬化的場(chǎng)景下為虛擬機(jī)創(chuàng)建Volume。如前所述,Red Hat已經(jīng)將RBD驅(qū)動(dòng)集成在KVM/QEMU中,以提高虛擬機(jī)訪問性能。 CephFS是一個(gè)POSI
7、X兼容的分布式文件系統(tǒng)。目前還處在開發(fā)狀態(tài),因而Ceph官網(wǎng)并不推薦將其用于生產(chǎn)環(huán)境中。4、服務(wù)器客戶端層 這一層就是不同場(chǎng)景下對(duì)于Ceph各個(gè)應(yīng)用接口的各種應(yīng)用方式,例如基于librados直接開發(fā)的對(duì)象存儲(chǔ)應(yīng)用,基于RADOS GW開發(fā)的對(duì)象存儲(chǔ)應(yīng)用,基于RBD實(shí)現(xiàn)的云硬盤等等。 Ceph Client是基于Fuse層(User SpacE)和VFS文件系統(tǒng)開發(fā),兼容Posix接口標(biāo)準(zhǔn)。在Ceph存儲(chǔ)系統(tǒng)中,Ceph Metadata Daemon 提供了元數(shù)據(jù)服務(wù)器,而Ceph Object Storage Daemon 提供了數(shù)據(jù)和元數(shù)據(jù)的實(shí)際存儲(chǔ)。Ceph對(duì)DFS、Block和Obj
8、ect數(shù)據(jù)寫入和讀取,都需Client利用Crush算法(負(fù)責(zé)集群中的數(shù)據(jù)放置和檢索的算法)完成存儲(chǔ)位置計(jì)算和數(shù)據(jù)組裝。Ceph內(nèi)部數(shù)據(jù)存儲(chǔ)視圖 在Ceph存儲(chǔ)系統(tǒng)中,Cehp的基礎(chǔ)服務(wù)架構(gòu)主要包括了Object Storage Device(OSD),Monitor和MDS。一個(gè)Cluster可邏輯上劃分為多個(gè)Pool,一個(gè) Pool由若干個(gè)邏輯 PG( Placement Group)組成,Pool內(nèi)的副本數(shù)量也是可以設(shè)置的。 Ceph底層是對(duì)象系統(tǒng),所以一個(gè)文件會(huì)被切分為多個(gè)Object,每個(gè)Object會(huì)被映射到一個(gè)PG,每個(gè)PG 會(huì)映射到一組 OSD(Object Storage D
9、evice),其中第一個(gè)OSD 是主,其余的是備,OSD間通過心跳來相互監(jiān)控存活狀態(tài)。引入PG概念后,OSD只和PG相關(guān),不但簡(jiǎn)化了OSD的數(shù)據(jù)存儲(chǔ),而且實(shí)現(xiàn)了Object到OSD的動(dòng)態(tài)映射,OSD的添加和故障不影響Object的映射。Ceph數(shù)據(jù)存儲(chǔ)過程 在Ceph存儲(chǔ)系統(tǒng)中,數(shù)據(jù)存儲(chǔ)分三個(gè)映射過程,首先要將用戶要操作的file,映射為RADOS能夠處理的object。就是簡(jiǎn)單的按照object的size對(duì)file進(jìn)行切分,相當(dāng)于RAID中的條帶化過程。接著把Object映射到PG,在file被映射為一個(gè)或多個(gè)object之后,就需要將每個(gè)object獨(dú)立地映射到一個(gè)PG中去。第三次映射就是
10、將作為object的邏輯組織單元的PG映射到數(shù)據(jù)的實(shí)際存儲(chǔ)單元OSD。 文件存入時(shí),首先把File切分為RADOS層面的Object,每個(gè)Object一般為2MB或4MB(大小可設(shè)置)。每個(gè)Object通過哈希算法映射到唯一的PG。每個(gè)PG通過Crush算法映射到實(shí)際存儲(chǔ)單元OSD,PG和OSD間是多對(duì)多的映射關(guān)系。OSD在物理上可劃分到多個(gè)故障域中,故障域可以跨機(jī)柜和服務(wù)器,通過策略配置使PG的不同副本位于不同的故障域中Ceph數(shù)據(jù)分布算法 Ceph以私有Client方式對(duì)外提供服務(wù),支持Linux用戶態(tài)(Fuse)和內(nèi)核態(tài)(VFS)方式,Clinet還實(shí)現(xiàn)數(shù)據(jù)切片,通過Crush算法定位對(duì)
11、象位置,并進(jìn)行數(shù)據(jù)的讀寫。但在測(cè)試中,通常在Ceph服務(wù)器端將Ceph配置成NFS服務(wù)的ExportFS,通過標(biāo)準(zhǔn)NFS接口導(dǎo)出目錄。 CephFS 支持POSIX、HDFS、NFS、CIFS服務(wù)接口,其中NFS和CIFS通過外置網(wǎng)關(guān)實(shí)現(xiàn)(通過Clinet導(dǎo)出)。 在PG通過Crush算法映射到數(shù)據(jù)的實(shí)際存儲(chǔ)單元OSD時(shí),需求通過Crush Map、Crush Rules和Crush算法配合才能完成。 Cluster Map用來記錄全局系統(tǒng)狀態(tài)記數(shù)據(jù)結(jié)構(gòu),由Crush Map和OSD Map兩部分組成。 Crush Map包含當(dāng)前磁盤、服務(wù)器、機(jī)架的層級(jí)結(jié)構(gòu),OSD Map包含當(dāng)前所有Pool的狀態(tài)和所有OSD的狀態(tài)。 Crush
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校熱水房管理制度
- 學(xué)校要?jiǎng)?chuàng)新管理制度
- 學(xué)校預(yù)收費(fèi)管理制度
- 寧河區(qū)資產(chǎn)管理制度
- 安全管理員管理制度
- 安裝加工棚管理制度
- 定制設(shè)計(jì)部管理制度
- 實(shí)行公司化管理制度
- 審批局安全管理制度
- 客房經(jīng)營(yíng)與管理制度
- 2025時(shí)政試題及答案(100題)
- 2024秋期國(guó)家開放大學(xué)本科《經(jīng)濟(jì)學(xué)(本)》一平臺(tái)在線形考(形考任務(wù)1至6)試題及答案
- NSTEMI指南解讀課件
- 精品解析:湖南省永州市2020年中考地理試題(原卷版)
- 貸款申請(qǐng)表(標(biāo)準(zhǔn)模版)
- 合理應(yīng)用喹諾酮類抗菌藥物專家共識(shí)精品課件
- 西北工業(yè)大學(xué)數(shù)電實(shí)驗(yàn)報(bào)告二Quartus和Multisim
- GB∕T 41666.3-2022 地下無壓排水管網(wǎng)非開挖修復(fù)用塑料管道系統(tǒng) 第3部分:緊密貼合內(nèi)襯法
- k受體激動(dòng)劑在臨床中的應(yīng)用
- 第四節(jié)-酸堿平衡失常的診治課件
- 在挫折中成長(zhǎng)(課堂PPT)
評(píng)論
0/150
提交評(píng)論