初窺GPFS文件系統

 轉載請註明出處!

姜江 [email protected]

 

一、什麼是GPFS文件系統
General Parallel File System(GPFS)是高性能、可擴展、並行文件系統,起源於IBM SP系統上使用的虛擬共享磁盤技術(VSD)。GPFS文件系統保證資源組內的所有節點可以並行訪問整個文件系統,並且文件系統上的文件可以分佈在不同的物理硬盤上。利用IBM Linux集羣系統中的“虛擬“共享磁盤技術,GPFS似的多個節點上運行的多個應用程序可以同時讀寫同一個文件。並且GPFS還包含了IBM可擴展集羣系統技術(RSCT),可以將存儲的內容自動恢復到活動節點上,當系統產生故障時,文件日誌可以快速的恢復數據,並且可以保證數據的一致性。在GPFS爲應用程序提供了UNIX標準的文件系統藉口,可以在不改變現有代碼的基礎上直接運行。

 

 二、GPFS文件系統的基本結構


GPFS文件系統由三層架構組成:GPFS文件設備、網絡共享磁盤(NSD)和磁盤
1、GPFS文件設備(GPFS File System Device)
GPFS文件設備由NSD創建,是可以被多個節點並行同時掛載的文件設備
2、網絡共享磁盤(NSD)
網絡共享磁盤(NSD)是由物理磁盤映射出來的虛擬設備,與磁盤之間是一一對應的關係。並且,NSD將虛擬設備按照不同的屬性劃分了不同的用途。NSD虛擬設備具有4種不同的磁盤屬性:
a、Desc Only:表示該磁盤存儲GPFS文件系統的描述信息
b、Data Only:表示該磁盤只存儲GPFS文件系統的數據信息
c、Meta Data Only:表示該磁盤只存儲GPFS文件系統的目錄結構信息(inode)
d、Meta And Data:表示該磁盤存儲GPFS文件系統中的所有信息(默認情況)

 

三、GPFS文件系統的特點

1、高性能

由於GPFS文件系統允許在同一個節點內的多個進程使用標準的UNIX文件系統接口,並行的訪問相同文件(讀寫)。並且,可以將節點的讀寫操作分佈到不同的物理磁盤上,因此避免了對某個磁盤過多讀寫操作,增加了整個系統的吞吐量,提高了系統的整體性能。

2、跨平臺

GPFS文件系統本身可以看成與具體系統無關的一個單獨系統,通過集羣方式可以支持多種操作系統,比如AIX、Linux等。

3、保證數據一致性

GPFS文件系統採用信令管理機制保證數據的一致性。信令機制允許各個節點通過獨自的路徑到達同一個文件。因此,當某個節點的某條路徑無法正常工作,依舊可以通過鏈路冗餘達到GPFS文件系統。並且GPFS本身設計成爲一種日誌文件系統,爲不同的節點建立了各自獨立的日誌(保存了Meta Data的分佈信息)。因此,一但節點發生故障後,可以通過日誌記錄的Meta Data的分佈信息,快速的找到相應的Meta Data然後恢復。

4、可擴展性

GPFS可以動態調整系統資源,支持在文件系統掛載的情況下動態的添加和刪除硬盤,而無須重啓。

5、方便管理

GPFS文件系統,可以自動的同步各個節點的配置文件和文件系統信息,因此可以在任意一個節點上管理GPFS。

 

 

四、系統可用狀態的仲裁

GPFS文件系統提供3種仲裁方式來確定系統當前狀態是否安全可靠:File Descriptor Quorum、Node Quorum和Tiebreaker Quorum

1、File Descriptor Quorum:

當在磁盤上創建GPFS文件系統時,會將文件系統信息的拷貝複製到多個磁盤上,達到數據冗餘的目的。這種方式是GPFS文件系統默認支持的,是不可以配置改變的。File Descriptor Quorum通過判斷包含有文件系統信息的磁盤的在線情況來判斷當前系統是否正常。當超過一半的包含文件系統信息的磁盤下線時,GPFS文件系統會判斷系統爲非正常狀態,此時會自動關閉文件系統。

2、Node Quorum:

GPFS文件系統集羣中,將多個主機節點設置成Quorum節點,當有超過一半的Quorum節點下線時,GPFS文件系統判斷系統爲非正常狀態,會自動關閉文件系統。

3、Tiebreaker Quorum:

GPFS文件系統集羣中,可以設置一些指定的物理磁盤作爲Tiebreaker Disk,GPFS文件系統會動態的監視這些磁盤的狀態。當有超過一般的Tiebreaker Disk下線時,則表示系統爲非正常狀態,自動關閉文件系統。按照文檔上來說,用於監視Tiebreaker Disk的Quorum主機數目最多隻能配置兩臺,當2臺Quorum主機都故障,則也表示系統故障,此時文件系統也會關閉。

 

Tibreaker Quorum和Node Quorum仲裁方式只能選擇其中一種,不能兩種同時使用。Tibreakder Quorum仲裁方式主要是用於節點比較少的親況下,如果整個系統的接入節點較多,應該考慮Node Quorum的仲裁方式。

 

 

 五、GPFS文件系統的併發訪問
1、併發訪問
GPFS文件系統的並行文件訪問通過兩個部分來實現:一是多個GPFS節點以並行的方式(可以是多個進程)訪問磁盤系統上的數據(相同或者不同);二是GPFS文件系統將文件訪問分散到不同的物理磁盤上,提升訪問效率。
2、文件鎖
GPFS文件系統支持併發訪問文件,因此需要一套鎖機制來保證併發訪問時數據的正確性。常見的鎖管理機制分爲兩種:集中式的鎖管理機制和分佈式的鎖管理機制。其中,在集中式的所管理機制中,集羣系統中會將一個或者多個節點專門用於負責管理文件系統的元數據(Meta Data)。當集羣中有多個節點需要同時訪問同一個數據單元時,節點首先需要向元數據管理服務器發送一個訪問請求,元數據管理服務器將讀寫操作授權給節點,節點即可對請求的數據單元進行讀寫操作。而分佈式的鎖管理機制中則沒有專門用於管理元數據的管理節點,文件系統中的元數據分佈在文件系統集羣的所有節點上。當有節點同時訪問同一個數據單元時,會通過保存的元數據信息找到集羣中擁有該數據單元鎖的節點發送請求,獲得批准後,方可訪問請求的數據單元。
GPFS文件系統中是將集中式和分佈式鎖管理機制結合的方式來管理併發訪問,GPFS文件集羣中有一個負責全局鎖管理的服務器,同時集羣中的每個節點上還保存了文件系統元數據。全局索管理服務器,通過令牌(Token)發放的方式,來協調各個節點的元數據訪問。當系統中有某個節點需要讀寫文件時,首先向Token Server請求獲得令牌,當獲得令牌後,可以從節點中獲取文件鎖,然後進行數據單元的讀取操作。

 

 六、參考資料
GPFS Primer for AIX Clusters,可以從以下站點獲得:
http://www-.ibm.com/servers/eserver/pseries/software/whitepapers/gpfs_primer.html

GPFS 1.4 for AIX - Architecture and Performance, Heger,D. and Shah,G.
GPFS on AIX Clusters:High Performance File System Administration Simplified,可以從IBM紅皮書站點獲得:
http://www.redbooks.ibm.com

The Complete Partitioning Guide forIBM^?pSeries?Servers,可以從IBM紅皮書站點獲得:
http://www.redbooks.ibm.com

IBM Total Storage:FAStT600/900 and Storage Manager 8.4,可以從IBM紅皮書站點獲得:
http://www.redbooks.ibm.com

 

~~~~~~ END ~~~~~~

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章