GPFS并行文件系統(tǒng)原理解析


1、GPFS歷史背景及發(fā)展
GPFS(General Parallel File System)是IBM公司推出的行業(yè)領(lǐng)先的并行分布式通用并行集群文件系統(tǒng),GPFS從1993開始研發(fā),1995年投入商用(最早投入使用在多媒體處理行業(yè),所以我們現(xiàn)在看到GPFS的很多目錄和命令為什么都有MM[multimedia]兩個字母,就是根據(jù)這個背景延續(xù)下來的)。
從1998年開始首先應(yīng)用于AIX集群,2001年后應(yīng)用于Linux集群,2010年后支持windows集群,IBM改名GPFS為Spectrum Scale,最新版本為Spectrum Scale5.1.x。
2、GPFS架構(gòu)
GPFS是一個共享磁盤,并行集群文件系統(tǒng)。可以跑在AIX,Linux和Windows操作系統(tǒng)的IBM Power和英特爾/AMD的x86架構(gòu)下。
2.1 SAN架構(gòu)和NSD架構(gòu)
目前,GPFS有三種架構(gòu),第一個示意圖中的每個Application Nodes上安裝GPFS,形成集群,下面的存儲和每一個Nodes相連。第二個示意圖中某一個或多個Node作為NSD server,直接和存儲相連,其他Nodes通過NSD servers訪問存儲,圖中的Application Nodes和NDS Servers共同組成GPFS Cluster。將示意圖打開:
從另外一個角度來看GPFS的基本結(jié)構(gòu):
磁盤:GPFS 文件系統(tǒng)最底層的是物理磁盤設(shè)備。原則上可以采用系統(tǒng)上任何塊設(shè)備。
網(wǎng)絡(luò)共享磁盤(NSD):NSD 是由磁盤映射出來的虛擬設(shè)備(LUN),NSD 與磁盤(LUN)是一一對應(yīng)的關(guān)系。NSD 被標(biāo)記了不同屬性來區(qū)分其用途,我們可以將磁盤標(biāo)記為 4 種用途(如上圖所示)
GPFS 文件設(shè)備:GPFS 設(shè)備是一個可被系統(tǒng)掛載的文件設(shè)備,由 NSD 創(chuàng)建而成,可以并行的同時掛載在多個節(jié)點上。
Server 1~Server N,對應(yīng)示意圖中的Application Nodes
2.2 SNC(Share Nothing Cluster)架構(gòu)
第三種架構(gòu)是在2010年推出的,這種新架構(gòu)是搭建在IBM并行文件系統(tǒng)集群(GPFS)之上的,融合Hadoop Distributed File System (HDFS)通過集群技術(shù)提供高可用性、動態(tài)文件系統(tǒng)管理和高級數(shù)據(jù)復(fù)制技術(shù)。
IBM將GPFS-SNC描述成一種通用的文件系統(tǒng),讓IBM能夠在“所有領(lǐng)域”競爭,不管是針對Google的MapReduce框架,在傳統(tǒng)數(shù)據(jù)倉庫環(huán)境下針對Oracle的Exadata Database Machine和EMC的Greenplum Data Computing Appliance,或是在云領(lǐng)域。
3、GPFS工作方式和擴(kuò)展方式
GPFS可以在線添加存儲和服務(wù)器,不影響應(yīng)用正常運(yùn)行,在IO服務(wù)器和磁盤存儲兩層都有很好的線性擴(kuò)展能力。
最右側(cè)的IO節(jié)點和磁盤存儲是在線擴(kuò)展的,支持8192節(jié)點的集群系統(tǒng),目前在線最大集群規(guī)模的為2440個linux節(jié)點和1530個AIX節(jié)點
很多實際安裝的GPFS集群規(guī)模都在500個節(jié)點以上
3.1、GPFS與NFS,SAN File System系統(tǒng)結(jié)構(gòu)的比較
GPFS不同于以下常見的兩種架構(gòu):
第一種,F(xiàn)ile Server為傳統(tǒng)的NAS,擴(kuò)展受限,存在性能瓶頸。但是對于isilon、N9000這種分布式NAS來說,不存在這個問題。
第二種,有元數(shù)據(jù)節(jié)點,有潛在的性能瓶頸和單點故障。如果是大文件讀寫場景,或者文件不是很小、規(guī)模不是很大的場景,也不存在性能瓶頸問題。
4、GPFS的優(yōu)勢
GPFS是從Tiger Shark 發(fā)展過來的,是目前應(yīng)用范圍較廣的一個系統(tǒng)。在系統(tǒng)設(shè)計中采用了多項先進(jìn)技術(shù)。它是一個共享磁盤(shared-disk)的分布式并行文件系統(tǒng),客戶端采用基于光纖通道或者iSCSI 與存儲設(shè)備相連,也可以通過通用網(wǎng)絡(luò)相連。
GPFS 的磁盤數(shù)據(jù)結(jié)構(gòu)可以支持大容量的文件系統(tǒng)和大文件,通過采用分片存儲、較大的文件系統(tǒng)塊、數(shù)據(jù)預(yù)讀等方法獲得了較高的數(shù)據(jù)吞吐率;采用擴(kuò)展哈希(extensible hashing)技術(shù)來支持含有大量文件和子目錄的大目錄,提高文件的查找和檢索效率。GPFS 采用不同粒度的分布式鎖解決系統(tǒng)中的并發(fā)訪問和數(shù)據(jù)同步問題:字節(jié)范圍的鎖用于用戶數(shù)據(jù)的同步,動態(tài)選擇元數(shù)據(jù)節(jié)點(metanode)進(jìn)行元數(shù)據(jù)的集中管理;具有集中式線索的分布式鎖管理整個系統(tǒng)中空間分配等。
GPFS 采用日志技術(shù)對系統(tǒng)進(jìn)行在線災(zāi)難恢復(fù)。每個節(jié)點都有各自獨立的日志,且單個節(jié)點失效時,系統(tǒng)中的其他節(jié)點可以代替失效節(jié)點檢查文件系統(tǒng)日志,進(jìn)行元數(shù)據(jù)恢復(fù)操作。GPFS 還有效地克服了系統(tǒng)中任意單個節(jié)點的失效、網(wǎng)絡(luò)通信故障、磁盤失效等異常事件。此外,GPFS 支持在線動態(tài)添加、減少存儲設(shè)備,然后在線重新平衡系統(tǒng)中的數(shù)據(jù)。這些特性在需要連續(xù)作業(yè)的高端應(yīng)用中尤為重要。
–文件存儲采用條帶化技術(shù),單個文件跨節(jié)點和存儲系統(tǒng)分布,提高并發(fā)訪問性能
–智能預(yù)取機(jī)制,通過對文件訪問模式的預(yù)測來進(jìn)行預(yù)取,降低讀寫延遲
–分布式的字節(jié)級鎖管理,允許最大程度的并發(fā)訪問
–分布式元數(shù)據(jù)服務(wù)器,所有元數(shù)據(jù)分散在磁盤陣列中,并可以由任何I/O節(jié)點管理,避免元數(shù)據(jù)處理成為系統(tǒng)瓶頸
–支持客戶端數(shù)據(jù)緩存,不同節(jié)點可以根據(jù)需要設(shè)置不同的緩存大小
–數(shù)據(jù)塊的大小可自定義,16 KB, 64 KB, 128 KB, 256 KB, 512 KB, 1 MB, 2 MB, 4MB, 8 MB and 16 MB
–NSD通信支持InfiniBand高速網(wǎng)絡(luò)
–最大可支持?jǐn)?shù)千個節(jié)點的集群規(guī)模和數(shù)百GB每秒的IO吞吐量
–在不停止服務(wù)的情況下向集群添加和刪除節(jié)點
–在不停止服務(wù)的情況下向文件系統(tǒng)加入和刪除磁盤
–在不停止服務(wù)的情況下修改文件系統(tǒng)inode數(shù)目
–先進(jìn)的仲裁管理機(jī)制,確保系統(tǒng)最大程度的可用性,沒有單一故障點
–管理服務(wù)器在manager資源池內(nèi)實現(xiàn)自動故障切換
–支持多路徑磁盤訪問,一條路徑訪問失敗,可以通過其它路徑實現(xiàn),每個NSD可以支持8個NSD Server
–支持對元數(shù)據(jù)和用戶數(shù)據(jù)做replication,保證系統(tǒng)穩(wěn)定可靠
–Rolling Update,不停機(jī)升級
–支持日志功能,實現(xiàn)系統(tǒng)快速恢復(fù)
–用戶接口簡單,與常用文件系統(tǒng)類似,方便用戶使用
–單點管理,可以集群內(nèi)任何一個節(jié)點上完成對GPFS的管理任務(wù),命令將在所有節(jié)點上生效
–自動在各個節(jié)點間同步配置文件和系統(tǒng)信息
–SnapShot(快照)
– ILM(信息生命周期管理)、HSM(分級存儲管理)
–跨集群數(shù)據(jù)共享(multi-cluster cross mount)
–Traditional GPFS ACL、NFS V4 ACL
–配額管理:User Qutota、Group Quota、fileset Quota
–直接通過TSM server備份數(shù)據(jù)
5、GPFS與高性能計算
HPC 領(lǐng)域里面使用 GPFS,一般會在所有節(jié)點里面都安裝 GPFS,只有 IO 節(jié)點(NSD Server)上可以直接訪問存儲(一般使用的 SAN 存儲),計算節(jié)點和登錄節(jié)點一般是安裝 GPFS Client(或者叫NSD Client)。對應(yīng)NSD Server Model。
GPFS License分為Server和Client兩種,價格不同。
GPFS文件系統(tǒng)被廣泛應(yīng)用于世界上超大規(guī)模的高性能計算機(jī)系統(tǒng)中,包括運(yùn)行速度最快的IBM Blue Gene系統(tǒng)。在TOP500計算機(jī)排名中的100+、200+套IBM計算機(jī)系統(tǒng)幾乎都采用了GPFS并行文件系統(tǒng)方案。這些項目成功實施和順利運(yùn)行充分證明了GPFS完全可以勝任用來構(gòu)建超大規(guī)模的計算機(jī)系統(tǒng)。
IBM GPFS并行文件系統(tǒng)軟件在設(shè)計上不存在任何性能瓶頸,因此GPFS并行文件系統(tǒng)可以充分發(fā)揮硬件系統(tǒng)的性能。換句話說,GPFS并行文件系統(tǒng)的性能完全取決于硬件配置的好壞,而文件系統(tǒng)軟件本身對性能的影響微乎其微。GPFS+DDN是業(yè)界最佳拍檔。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6、GPFS不足
GPFS 在 HPC 領(lǐng)域并沒有多少突出的缺點,但是GPFS涉及到大量的性能調(diào)優(yōu)服務(wù),且需要用戶自身對存儲相關(guān)技術(shù)領(lǐng)域有深厚的基礎(chǔ),對業(yè)務(wù)流程理解較深入,實際上只適合用戶數(shù)量較少且本身比較專業(yè)的情況。如,GPFS 的 Cache(pagepool)是預(yù)先分配好的(可以通過一個參數(shù)調(diào)整),不能根據(jù)需要靈活的分配和回收。
在IBM網(wǎng)站上有個視頻<理解IBM GPFS的優(yōu)勢>,里面有相關(guān)描述,在其他視頻網(wǎng)站上也可以獲取這個視頻。

轉(zhuǎn)載申明:轉(zhuǎn)載本號文章請注明作者和來源,本號發(fā)布文章若存在版權(quán)等問題,請留言聯(lián)系處理,謝謝。
推薦閱讀
更多架構(gòu)相關(guān)技術(shù)知識總結(jié)請參考“架構(gòu)師技術(shù)全聯(lián)盟書店”相關(guān)電子書(35本技術(shù)資料打包匯總詳情可通過“閱讀原文”獲取)。
內(nèi)容持續(xù)更新,現(xiàn)下單“架構(gòu)師技術(shù)全店打包匯總(全)”,后續(xù)可享全店內(nèi)容更新“免費”贈閱,格僅收188元(原總價270元)。
溫馨提示:
掃描二維碼關(guān)注公眾號,點擊閱讀原文鏈接獲取“架構(gòu)師技術(shù)全店資料打包匯總(全)”電子書資料詳情。

