Global File System

Global File System (GFS)は、Linuxコンピュータ・クラスター用クラスタファイルシステムの一種である。AFSやCoda、Google File System（紛らわしいことに同様にGFSと略される）などの分散ファイルシステムとは異なり、全ノードから同じ共有ストレージに同時にアクセスできる。

GFSでは非接続運用モードがなく、クライアントとサーバの区別がない。全てのノードは同等である。GFS共有ストレージとしては、ファイバーチャネル、iSCSI、AoEなどを主に使う。クラスターでGFSを使うには、フェイルオーバーによる冗長性を実装するGULMなどのサーバベースのロックマネージャ・プラグインや分散ロックマネージャ(DLM)を使う必要がある。単一ノードでGFSを普通のファイルシステムのように使う場合は "nolock" ロックマネージャを使うこともできる。GFS はフリーソフトウェアであり、GNU General Public Licenseでライセンスされている。

歴史 
GFSは1997年、ミネソタ大学ツインシティー校で開発されたのが起源である。当初SGIのIRIX上で開発していたが、オープンソースの環境の方が開発しやすいことから1998年にはLinuxに移行した。1999年末から2000年初めに、その開発はSistina Softwareという企業に移行され、しばらくオープンソースで開発を続行していた。しかし2001年、SistinaはGFSをオープンソースでないライセンスで商用化することを選択した。

そのため開発者らがGFSの最新版からOpenGFSをフォークさせ、OpenDLMと共に更新を続けた。しかし2003年12月、レッドハットがSistinaを買収し、2004年6月にGPLライセンスでGFSと各種クラスタ基盤部品をリリースしたため、OpenGFSとOpenDLMは事実上意味がなくなった。

レッドハットはその後バグ修正と安定性向上に注力し、GFSから派生したGFS2と分散ロックマネージャ（GFSと共通）をLinux 2.6.19に組み込んだ。GFS2はRed Hat Enterprise Linux 5.2で、評価目的のためにカーネルモジュールとして含まれ、5.3アップデートで、カーネルパッケージの一部となった。一方、GFSは、Red Hat Enterprise Linux 6からは対応されない。

2007年、GFSはFedoraやCentOSといったLinuxディストリビューションにも採用された。Red Hat Enterprise Linux上でGFSを完全に動作させるための有償サポートもある。Red Hat Enterprise Linux 5からは、RHEL Advanced PlatformにGFSサポートも含まれており、サポートに追加コストは発生しない。

以下にバージョン番号と機能の対応を示す。

 v1.0 (1996) SGI IRIXのみ
 v3.0 Linuxに移植
 v4 ジャーナリング
 v5 冗長ロックマネージャ
 v6.1 (2005) 分散ロックマネージャ

関連項目 
 GPFS, ZFS
 Lustre
 GlusterFS
 OCFS

脚注

外部リンク 
 Red Hat GFS Product Page
 Red Hat Cluster Suite and GFS Documentation Page
 GFS Project Page
 OpenGFS Project Page
 The GFS2 development git tree
 GFSからGFS2へのファイルシステム変換

Linuxのファイルシステム
分散処理