何雨:統(tǒng)一存儲Ceph之RADOS簡介_第1頁
何雨:統(tǒng)一存儲Ceph之RADOS簡介_第2頁
何雨:統(tǒng)一存儲Ceph之RADOS簡介_第3頁
何雨:統(tǒng)一存儲Ceph之RADOS簡介_第4頁
何雨:統(tǒng)一存儲Ceph之RADOS簡介_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、Ceph RADOS簡介 (Reliable, Autonomic Distributed Object Store) 京東虛擬化總監(jiān) 何雨 架構(gòu)簡介 兩個部分組成: 由數(shù)目可變的大規(guī)模OSDs(Object Storage Devices)組成的集群,負(fù)責(zé)存儲所有的Objects數(shù)據(jù) 由少量Monitors組成的強耦合、小規(guī)模集群,負(fù)責(zé)管理Cluster Map,其中Cluster Map是整個RADOS系統(tǒng)的關(guān)鍵數(shù)據(jù)結(jié)構(gòu),管理集群中的所有成員、關(guān)系、屬性等信息以及數(shù)據(jù)的分發(fā)。Cluster Map 管理cluster的核心數(shù)據(jù)結(jié)構(gòu) 指定了OSDs和數(shù)據(jù)分布信息 monitor上存有最新副本

2、 依靠epoch增加來維護及時更新 增量信息Cluster Map 1.The Monitor Mapcluster fsid, the position, name address and port of each monitor 2.The OSD Mapcluster fsid,a list of pools, replica sizes, PG numbers, a list of OSDs and their status 3.The PG Map:PG version, its time stamp, the last OSD map epoch, the full ratios,

3、 and details on each placement group such as the PG ID,the Up Set, the Acting Set, the state of the PG (e.g., active + clean), and data usage statistics for each pool. 4.The CRUSH Mapa list of storage devices, the failure domain hierarchy (e.g., device, host, rack, row, room, etc.), and rules for tr

4、aversing the hierarchy when storing data 5.The MDS MapMDS map epoch,the pool for storing metadata, a list of metadata servers, and which metadata servers are up and in數(shù)據(jù)存放1Object到PG的映射。PG (Placement Group)是Objects的邏輯集合。相同PG里的Object會被系統(tǒng)分發(fā)到相同的OSDs集合中。由Object的名稱通過Hash算法得到的結(jié)果結(jié)合其他一些修正參數(shù)可以得到Object所對應(yīng)的PG。2

5、RADOS系統(tǒng)根據(jù)根據(jù)Cluster Map將PGs分配到相應(yīng)的OSDs。這組OSDs正是PG中的Objects數(shù)據(jù)的存儲位置。RADOS采用CRUSH算法實現(xiàn)了一種穩(wěn)定、偽隨機的hash算法。CRUSH實現(xiàn)了平衡的和與容量相關(guān)的數(shù)據(jù)分配策略。CRUSH得到的一組OSDs還不是最終的數(shù)據(jù)存儲目標(biāo),需要經(jīng)過初步的filter,因為對于大規(guī)模的分布式機群,宕機等原因使得部分節(jié)點可能失效,filter就是為過濾這些節(jié)點,如果過濾后存儲目標(biāo)不能滿足使用則阻塞當(dāng)前操作。關(guān)于pools 是一個存儲對象的邏輯分區(qū)概念 所有權(quán)/訪問對象 對象副本的數(shù)目 PG數(shù)目 CRUSH規(guī)則集的使用 以上后三項決定ceph

6、最后如何存儲數(shù)據(jù)計算PG的ID 1.Client輸入pool ID和對象ID(如pool=liverpool,object-id=john) 2.CRUSH獲得對象ID并對其hash 3.CRUSH計算OSD個數(shù)hash取模獲得PG的ID(如0 x58) 4.CRUSH獲得已命名pool的ID(如liverpool=4) 5.CRUSH預(yù)先考慮到pool ID相同的PG ID(如4.0 x58)Device Stateinoutassigned PGsnot assigned PGsuponline activeonline & idle& reachabledownunrea

7、chableunreachablefailed& not remappedpeer和set peer 屬于同一個PG 彼此檢查心跳 數(shù)據(jù)同步 set Acting set PG內(nèi)所有osd屬于Acting set Up set PG內(nèi)up&in的osdmap傳播 所有消息傳播都有一個epoch client端: 首次進入去找monitor要最新副本 存取時找OSD對比epoch OSD端: peers之間保持心跳 只保證兩個OSD之間同步數(shù)據(jù)復(fù)制 讀文件通過一個OSD 主OSD 寫文件通過多個OSD復(fù)制 Client把對象寫進一個確定的PG組中的主OSD 主OSD利用CRUSH map用來確定二級OSDs,復(fù)制的對象放入其中。 對象存儲成功后進行響應(yīng)client。數(shù)據(jù)復(fù)制錯誤檢測和恢復(fù) 錯誤檢測: 利用心跳 上報monitor 更新map 錯誤恢復(fù) 主osd主持恢復(fù)工作 若主osd掛掉,二級osd選擇一個頂上數(shù)據(jù)條帶化 由于存儲設(shè)備吞吐量的限制,影響性能和可伸縮性。 跨多個存儲設(shè)備的連續(xù)塊條帶化存儲信息,以提高吞吐量和性能 Ceph條帶化相似于RAID0 注意:ceph條帶化屬于client端,不在RADOS范疇注意:條帶化是獨立于對象副本的。由于CRUSH副本對象跨越OSDs,所以條帶自動的被復(fù)制。條帶化參數(shù) Object Size: 足夠大可以容納條帶單元,必

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論