資源描述:
《分布式存儲基礎cephcinder及華為軟件定義的存儲方案》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在工程資料-天天文庫。
1、塊存儲與分布式存儲塊存儲,簡單來說就是提供了塊設備存儲的接口。通過向內(nèi)核注冊塊設備信息,在Linux中通過Isblk可以得到當前主機上塊設備信息列表。木文包柄丫單機塊存儲介紹、分布式存儲技術Ceph介紹,云中的塊存儲Cinder,以及華為軟件定義的存儲解決方案。單機塊存儲一個硬盤是一個塊沒備,內(nèi)核檢測到硬盤然后在/dev/下會看到/dev/sda/。W為需耍利用一個硬盤來得到不同的分區(qū)來做不同的事,通過fdisk下具得到/dev/sdal,/dev/sda2等,這種方式通過直接寫入分區(qū)表來規(guī)定和切分硬盤,是最死板的分區(qū)方式。分布式塊存儲在而對極具彈性的存儲需求和性
2、能耍求下,單機或者獨立的SAN越來越不能滿足企業(yè)的需要。如同數(shù)拋庫系統(tǒng)一樣,塊存儲在scaleup的瓶頸下也臨著scaleout的需要。分布式塊存儲系統(tǒng)具右以下特性:分布式塊存儲可以為任何物理機或者虛擬機提供持久化的塊存儲設備;分布式塊存儲系統(tǒng)管理塊設備的創(chuàng)建、刪除和attach/detach;分布式塊存儲支持強大的快照功能,快照町以川來恢父或者創(chuàng)建新的塊設備;分布式存儲系統(tǒng)能夠提供不同10性能要求的塊設備?,F(xiàn)卜'主流的分布式塊存儲脊Ceph、AMSESB、阿里云磁盤與sheepdog等。1Ceph1.1Ceph概述Ceph目前是OpenStack文持的開源塊存儲
3、實現(xiàn)系統(tǒng)(即Cinder項目backenddriver之一)。Ceph是一?種統(tǒng)一的、分介式的存儲系統(tǒng)。“統(tǒng)一的”意味若Ceph可以一套存儲系統(tǒng)同吋提供對象存儲、塊存儲和文件系統(tǒng)存儲三種功能,以便在滿足不同應用需求的前提卜簡化部署和運維?!胺植际健痹贑eph系統(tǒng)屮則意味著真正的無屮心結構和沒有理論上限的系統(tǒng)規(guī)模可擴展性。Ceph具有很好的性能、可靠性和可擴展性。其核心設計思想,概括為八個字一“無需杳表,算算就好”。1.2Ceph系統(tǒng)的層次結構&下句上,可以將Ceph系統(tǒng)分為四個層次:基礎存儲系統(tǒng)RADOS(Reliable,Autonomic,Distribute
4、dObjectStore,即可靠的、自動化的、分介式的對象存儲);蕪礎庫LIBRADOS;高層應用接口:包括了三個部分:RADOSGW(RADOSGateway)、RBD(ReliableBlockDevice)和CephFS(CephFileSystem)。RADOS山兩個組件組成:一種是數(shù)量很多、負責完成數(shù)據(jù)存儲和維護功能的OSD(ObjectStorageDevice)。W—種則是其
5、?個負責完成系統(tǒng)狀態(tài)檢測和維爐的Monitor、OSD和monitor之間相互傳輸節(jié)點狀態(tài)信息,共同得出系統(tǒng)的總體工作狀態(tài),并形成一個全局系統(tǒng)狀態(tài)記錄數(shù)據(jù)結構,即所謂的clus
6、termap。這個數(shù)據(jù)結構與RADOS提供的特定算法相配合,便實現(xiàn)Ceph“無耑查表,算算就好”的核心機制以及若干優(yōu)秀特性。OSD可以被抽象為兩個組成部分,即系統(tǒng)部分和守護進程(OSDdeamon)部分。OSD的系統(tǒng)部分木質上就是一臺安裝了操作系統(tǒng)和文件系統(tǒng)的計算機,K硬件部分至少包括一個單核的處理器、一定數(shù)量的內(nèi)存、一塊硬盤以及一張網(wǎng)卡。在上述系統(tǒng)T?臺上,每個OSD擁有一個fcl己的OSDdeamon。這個deamon負責完成OSD的所存邏樹功能,包括與monitor和其他OSD(事實上是其他OSD的deamon)通信以維護更新系統(tǒng)狀態(tài),與其他OSD共同完成數(shù)
7、據(jù)的存儲和維護,與client通恰完成各種數(shù)裾對象操作等等。1.3Ceph中的數(shù)據(jù)尋址用戶存儲數(shù)據(jù)吋的數(shù)據(jù)路由過程如下圖所示:首先明確兒個概念:File——用戶需要存儲或者訪問的文件。對于一個基于Ceph開發(fā)的對象存儲應用而言,這個file也就對應于應用屮的“對象”,也就是用戶茛接操作的“對象”。Ojbect——RADOS所看到的“對象”。Object與上而提到的file的區(qū)別是,object的最大size由RADOS限定(通常為2MB或4MB),以便實現(xiàn)底層存儲的組織管理。因此,當上層應用向RADOS存入size很大的file時,?需要將file切分成統(tǒng)一大小的
8、一系列object(MJn-*個的大小可以不同)進行存儲。PG(PlacementGroup)顧名思義,PG的川途足對object的存儲進行組織和位H映射。具體而言,一個PG負責組織若十個object(可以為數(shù)千個甚至更多),但一個object只能被映射到一個PG中,即,PG和object之間是“一對多”映射關系。同吋,—個PG會被映射到n個OSD上,而每個OSD上都會承載大量的PG,BP,PG和OSD之間是“多對多”映射關系。在實踐當中,n至少為2,如果用于生產(chǎn)環(huán)境,則至少為3。一個OSD上的PG則可達到數(shù)百個。事實上,PG數(shù)M的設S牽扯到數(shù)據(jù)分布的均勻性問題。
9、OSD即o