この投稿の目的は、システム管理者に Linux で利用可能なファイル システムの概要と比較を提供することです。
Linux ファイル システム
Linux OS の最も興味深い機能の 1 つは、さまざまなファイル システムです。ファイル システムは、パーティション単位で定義および構築できます。 VFAT、ext2、ext3、ext4、および Reiser ファイル システムは、他のいくつかのファイル システムおよび raw パーティションと共に、同じ Linux システムに共存できます。
どちらを使用するかは、サポート性、信頼性、セキュリティ、およびパフォーマンスに基づいて選択します。オラクルは通常、ファイル システムに対して自社製品を認定していませんが、オペレーティング システムは認定しています。ただし、一部の Linux ディストリビューションでは、オラクルが異なるファイルシステムで認定を取得することを選択する場合があります。バージョンに応じて、Linux には ext2、ext3、ext4、btrfs、および NFS ベースのストレージ システム (NetApp など) が含まれる場合があります。
推奨ファイル システムM
Linux OS で利用できるさまざまなファイル システムがあります:
- ext2、ext3、ext4 ファイル システムは堅牢です。 ext2 は、2.2 カーネルでのデフォルトのファイル システムでした。 ext3 は、ジャーナリング機能を備えた拡張 ext2 ファイルシステムです。 ext3 は、RHEL 3 および 4 のデフォルトのファイルシステムです。ext4 は、ext3 の後継として開発されました。大規模なファイル システム、パフォーマンス、上限の引き上げ、および信頼性のための機能を提供します。
- Oracle Cluster File System (OCFS) は、Oracle Real Application Cluster (RAC) 専用に設計された共有ファイル システムです。 OCFS により、Oracle データベース ファイルを論理ドライバにリンクする必要がなくなります。 OCFS ボリュームは、冗長性とパフォーマンスの向上のために、1 つの共有ディスクまたは複数の共有ディスクにまたがることができます。
- OCFS2 は、次世代の Linux 用 Oracle Cluster File System です。これは、エクステント ベースの POSIX 準拠のファイル システムです。以前のリリース (OCFS) とは異なり、OCFS2 は、Oracle Real Application Cluster (RAC) インストールの管理をさらに容易にする共有 Oracle ホーム インストールに使用できる汎用ファイル システムです。
- XFS は高いスケーラビリティを実現するように設計されており、ファイル システムが複数のストレージ デバイスにまたがっている場合でも、ネイティブに近い I/O パフォーマンスを提供します
要約すると、推奨されるファイルシステムは次のとおりです:
<オール>ファイル システムの特徴
ファイルシステムを選択するとき、パフォーマンスは最も重要なポイントではありません。たとえば、データが破損、紛失、または危険にさらされる可能性がある場合は、高速ファイル システムを使用しないでください。 Oracle は、ライトスルー キャッシュ機能を持たないファイル システム上のファイルをサポートしていません。ファイル システムは、書き込み操作を確認する必要があります。たとえば、標準 NFS は UDP ベースであり、これは確認メカニズムを含まないネットワーク プロトコルです。サポートされているネットワーク ファイル システムを提供しているベンダーの 1 つが Network Appliance で、変更された NFS プロトコルを使用しています。
セキュリティ要件もあります。 Oracle RDBMS とデータベース ファイルには、一部のファイル システム (VFAT など) では使用できない特別なファイル アクセス許可が必要です。特定のファイル権限が正しく設定されていないと、Oracle RDBMS は正しく機能しません。データ ファイルは、データベース所有者のみがアクセスできる必要があります。データベース サーバーは、他のすべてのファイルおよびデータ アクセスを制御できる必要があります。
ジャーナリングは人気のある特徴です。主な利点は、ファイル システムへの変更がジャーナル ファイルに記録されることです。ディスクを同期せずにサーバーがクラッシュまたはシャットダウンした場合、ジャーナル ファイルをファイル システムに適用できます。このようなファイル システムの整合性チェックとリカバリは非常に高速です。これは、システムの起動時に非常に顕著です。 fsck コマンドは、ジャーナリングされていないファイル システムと比較して、ジャーナリングされたファイル システムをより迅速にチェックします。
単一ノード (ローカル) ファイルシステム
注意 :これらのファイルシステムは、別々のサーバー間で共有してはなりません。ext2、ext3、ext4
– ext2、ext3、および ext4 ファイル システムは密接に関連しています。
– ext2 は ext3 に変換できます。
– ext3 は ext2 ファイル システムとしてマウントできます。
– ext3 はジャーナル ファイルです。システム。 、信頼性。
ReiserFS
– Novell/SuSE Linux のデフォルトのファイル システムです。 RedHat ディストリビューションでは、デフォルトではインストールされませんが、必要なパッケージは配布メディアにあります。
– ReiserFS は現在、SuSE/Novell でメンテナンス モードになっています。
btrfs
– Btrfs wiki より:Btrfs は、Linux 用の新しいコピー オン ライト (CoW) ファイル システムであり、フォールト トレランス、修復、および簡単な管理に重点を置きながら高度な機能を実装することを目的としています。
– Oracle、Red Hat、Fujitsu、Intel で共同開発、SUSE、STRATO など、多くの Btrfs は GPL の下でライセンスされており、誰からでも貢献できます。
詳細については、https://btrfs.wiki.kernel.org を参照してください。
XFS
XFS は高いスケーラビリティを実現するように設計されており、ファイル システムが複数のストレージ デバイスにまたがっている場合でも、ネイティブに近い I/O パフォーマンスを提供します。詳細については、Oracle Linux の XFS ファイルシステムを参照してください。
マルチノード (共有/クラスター化) ファイルシステム
生のパーティション
– Raw パーティションは、高性能ソリューションと見なされてきました。
– Raw 読み取りと書き込みは、OS バッファ キャッシュを使用しません。
– Raw 読み取りと書き込みは、ファイル システム I/O よりも大きなバッファを移動できます。
/>– Raw には、より経験豊富な管理が必要です。
Oracle Cluster File System (OCFS)
– Oracle Cluster File System は、RAC で使用するように設計されています。 Oracle は、データベース ファイルで使用する OCFS をサポートしています。 OCFS はジャーナリングされたファイル システムではありませんが、非常に優れたパフォーマンス メトリックを備えています。
– ロー デバイスと比較して、そのパフォーマンスは 5% 未満遅く、ほとんどのテストでは 2% しか遅くありません。
– OCFS バージョンから始めます。 . 1.0.14-1、OCFS は非同期 I/O をサポートします。
OCFS2
OCFS2 は、次世代の Linux 用 Oracle Cluster File System です。これは、エクステント ベースの POSIX 準拠のファイル システムです。以前のリリース (OCFS) とは異なり、OCFS2 は、Oracle Real Application Cluster (RAC) インストールの管理をさらに容易にする共有 Oracle ホーム インストールに使用できる汎用ファイル システムです。新機能と利点は次のとおりです。
- Context Dependent Symbolic Links (CDSL) を使用したノードとアーキテクチャのローカル ファイル
- ネットワーク ベースのプラグ可能な DLM。
- Linux カーネル「JBD」サブシステムを使用したジャーナリング/ノード リカバリの改善。
- メタデータ操作 (スペースの割り当て、ロックなど) のパフォーマンスが向上しました。
- 改善されたデータ キャッシング/ロック (Oracle バイナリ、ライブラリなどのファイル用)
詳細については、https://oss.oracle.com/projects/ocfs2/ を参照してください。