1.8. 共有ストレージファイルシステム
共有ストレージファイルシステム (クラスターファイルシステムとも呼ばれる) は、クラスター内の各サーバーが共有ブロックデバイスに直接アクセスできるようにする。彼らはローカルストレージエリアネットワーク (SAN) を使用している。
- ネットワークファイルシステムとの比較
- クライアント/サーバーのファイルシステムと同様、共有ストレージファイルシステムは、クラスターのすべてのメンバーであるサーバーのセットで機能します。しかし、NFS とは異なり、単一のサーバーが他のメンバーにデータやメタデータへのアクセスを提供することはありません。クラスターの各メンバーは、同じストレージデバイス (共有ストレージ) に直接アクセスできます。クラスターのすべてのメンバーノードは、同じファイルセットにアクセスします。
- 同時並行性
キャッシュの一貫性は、データの一貫性と整合性を確保するためにクラスター化されたファイルシステムで重要になります。クラスター内のすべてのノードに表示される、クラスター内のすべてのファイルのバージョンが 1 つ必要です。ファイルシステムは、クラスターメンバーが同じストレージブロックを同時に更新してデータ破損を引き起こすことを防止しなければならない。そのため、共有ストレージファイルシステムは、クラスター全体にわたるロック機構を使用します。これは、競合を防ぐための手段として、ストレージへのアクセスを制御するものです。
たとえば、新しいファイルを作成したり、複数のサーバーで開いているファイルに書き込んだりする前に、ファイルシステムコンポーネントは適切なロックを取得する必要があります。
クラスターファイルシステムの要件は、Apache Web サーバーのような可用性の高いサービスを提供することです。クラスターのどのメンバーも、共有ディスクファイルシステムに保存されているデータの完全な整合性のあるビューを見ることができます。すべての更新は、ロック機構によって正しく処理されます。
- パフォーマンスの特徴
共有ディスクファイルシステムは、同じシステム上で動作するローカルファイルシステムほど常に優れたパフォーマンスを発揮するとは限りません。これは、ロック処理に伴う計算コストが原因です。共有ディスクファイルシステムは、各ノードがほぼ自身のファイルセットにのみ書き込みを行うような特定のワークロードにおいて、優れたパフォーマンスを発揮します。これらのファイルは他のノードとは共有されません。
または、一連のファイルをほぼ読み取り専用の方法でノード間で共有することも可能だ。これにより、ノード間のキャッシュの無効化が最小限に抑えられ、パフォーマンスを最大化できます。
共有ディスクファイルシステムの設定は複雑です。共有ディスクファイルシステム上でアプリケーションが適切に動作するように調整することは、困難な場合がある。