FusionStorage邏輯架構,及工作原理


1、概念

Server SAN(又稱為分布式存儲):由多個獨立的服務器組合在一起,將它們的計算存儲資源融合在一起,形成一個資源池。(scale out,可線性擴展到4096個節點)

傳統存儲:只增加了存儲能力,沒有增加計算能力。傳統存儲的機頭,一般有2控,但是可以擴大到16控。(scale up)

 

華為FusionStorage有三種:塊存儲、文件存儲、對象存儲。不同的應用場景用不同的應用方式。

 

 

 

FusionStorage是一款軟件定義存儲的分布式存儲產品。它是軟件、軟件、軟件!!重要的事情說三遍。

 

 

塊存儲:一般應用於兩種場景(資源池、數據庫)

 

 

文件存儲:就是在塊設備上,部署了一個文件系統。但是部署這個文件系統,會使其性能受到損耗。

    一般文件系統,存儲過程將文件按照文件系統的最小塊打散,再寫進硬盤,過程中,沒有區分元數據和數據,而是在每個塊最后才會告知下一個塊的地址,因此,只能一個一個的讀,速度相對來說,是比較慢的。

 

對象存儲: 對象存儲將元數據和數據分離出來,當用戶訪問數據的時候,會先去找元數據,然后由元數據去找后端具體的數據。

                   當用戶訪問對象時,會先訪問元數據服務器,元數據服務器只負責反饋對象存儲在那些OSD。假設反饋文件A存儲在B,C,D三台OSD,那么用戶就會再次訪問三台OSD服務器去讀取數據。OSD服務器數量越多,傳輸速度就越快。

因此,對象存儲很好的結合了塊存儲和文件存儲的優點。

 

那為什么還要使用塊存儲和文件存儲呢?

1、有一類應用性能要求很高,比如說,數據庫。因為數據庫需要存儲裸盤映射給自己后,再根據自己的數據庫文件系統來對了裸盤進行格式化,因此不能采用其他已經被格式化為某種文件系統的存儲。此類更適合塊存儲。

2、對象存儲的成本比普通的文件存儲還是較高,需要購買專門的對象存儲軟件以及大容量硬盤。如果對數據量要求不是海量,只是為了作文件共享的時候,直接用文件存儲的形式就好了,性價比高。

FusionStorage的部署方式有兩種:分離部署和融合部署。

分離部署就是把VBS和OSD分開,在不同的服務器上部署。

融合部署就是將VBS和OSD部署在一台服務器上。

 原理圖:

 

 

FusionStorage Manager:FusionStorage的管理模塊,提供告警,監控,日志,配置等維護功能。一般情況下,主備部署。

FusionStorage Agent:代理進程,部署在各個服務器節點上,實現各節點與FSM通信。FSA包含MDC、VBS、OSD三種不同的進程。

MDC:元數據控制,實現對分布式集群的狀態控制,以及控制數據分布式規則,數據重建規則等。MDC默認部署在3個節點的ZK(zookeeper)盤上,形成MDC集群。(創建存儲池,主MDC會選擇實施存儲池的節點中產生一個新的MDC作為即將產生存儲池的管理者:歸屬MDC,歸屬MDC會控制存儲池的)

VBS:虛擬塊存儲管理組件,負責元數據的管理。提供分布式集群接入點服務,使計算資源能夠通過VBS訪問分布式存儲資源(告知用戶有一個存儲提供接入點)。每個節點默認部署一個VBS進程,形成VBS集群。節點也可以通過部署多個VBS來提升性能。(VBS不屬於任何資源池,某個VBS同時使用多個存儲池的空間,VBS啟動時輪詢MDC,誰是主,MDC發現這個VBS,主MDC向其它歸屬MDC報告狀態:VBS的相關信息。節點故障時,MDC修改IOview,完成后會把視圖同步給VBS,VBS拿到后將自己的IO引流到另一個副本,VBS有所有MDC的數量和信息。VBS會根據地址對IO進行切片,按1M大小切片,不足1M也要切片。)

OSD:對象存儲設備服務,執行具體的IO操作(通過內核完成)。在每個服務器上部署多個OSD進程,一塊磁盤默認部署一個OSD進程(管理磁盤作用)。在SSD卡作主存時,為了充分發揮SSD卡的性能,可以在一張SSD卡上部署多個OSD進程進行管理,例如2.4TB的SSD卡可以部署6個OSD進程,每個OSD進程負責管理400GB。(OSD在存儲池中,一個存儲池有多個OSD,主VBS向存儲池中的OSD索要卷的元數據)(兩副本:存儲池OSD數量12-96。三副本:存儲池OSD數量12-2048)

ZK不是FS獨有的,在FS中作為集群協調軟件。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM