第21章 ファイルシステム
OverlayFS
OverlayFS は、ユニオンファイルシステムのタイプです。ユーザーは、あるファイルシステムに別のファイルシステムを重ねることができます。変更は上位のファイルシステムに記録され、下位のファイルシステムは変更しません。これにより、ベースイメージが読み取り専用メディアにあるコンテナーや DVD-ROM などのファイルシステムイメージを、複数のユーザーが共有できるようになります。詳細は、カーネルファイル Documentation/filesystems/overlayfs.txt を参照してください。
OverlayFS は、ほとんどの状況で引き続き Red Hat Enterprise Linux 7.2 ではテクノロジープレビューとなります。このため、OverlayFS を有効にすると、カーネルにより警告のログが記録されます。
Docker で次の制約を付けて使用する場合は、OverlayFS が完全対応となります。
* OverlayFS は Docker グラフドライバーとして使用する場合にのみサポートされます。サポートはコンテナー COW コンテンツでの使用に限定され、永続ストレージとしてはサポートされません。永続ストレージは OverlayFS 以外のボリュームに配置している場合に限りサポートの対象となります。使用できるのはデフォルトの Docker 設定のみです。つまり、オーバーレイレベル 1 つ、下層側ディレクトリー 1 つ、同じファイルシステムに配置された上層レベルと下層レベルという設定です。
* 下層ファイルシステムとしての使用は現在、XFS のみがサポートされています。
* 物理マシンで SELinux を有効にし、Enforcing モードになっている必要がありますが、コンテナーの分離を実行する場合はコンテナーで無効にする必要があります。つまり、/etc/sysconfig/docker には --selinux-enabled を含めることはできません。OverlayFS の SELinux サポートはアップストリームで機能しており、今後のリリースでは予定されています。
* OverlayFS カーネル ABI およびユーザー空間の動作は安定しているとみなされず、今後の更新で変更が加えられる可能性があります。
* yum ユーティリティーおよび rpm ユーティリティーをコンテナー内で適切に機能させるには、yum-plugin-ovl パッケージを使用する必要があります。
OverlayFS は制限付きで POSIX 標準セットを提供しています。OverlayFS を使用してアプリケーションをデプロイする前に、アプリケーションを十分にテストしてください。
オーバーレイとして使用するように -n ftype=1 オプションを有効にして、XFS ファイルシステムを作成する必要がある点に注意してください。システムのインストール時に作成された rootfs およびファイルシステムを使用して、Anaconda キックスタートに --mkfsoptions=-n ftype=1 パラメーターを設定します。インストール後に新しいファイルシステムを作成する場合は、# mkfs -t xfs -n ftype=1 /PATH/TO/DEVICE コマンドを実行します。既存のファイルシステムがオーバーレイとして使用できるかどうかを確認するには、# xfs_info /PATH/TO/DEVICE | grep ftype コマンドを実行して、ftype=1 オプションが有効になっているかどうかを確認します。
Red Hat Enterprise Linux 7.2 リリース時点では、OverlayFS に関連する既知の問題がいくつかあります。詳細は、Documentation/filesystems/overlayfs.txt ファイルの 'Non-standard behavior' を参照してください。
柔軟なファイルレイアウトによる NFSv4 クライアントのサポート
Red Hat Enterprise Linux 7.2 では、NFSv4 クライアントで柔軟なファイルレイアウトのサポートが追加されました。この技術は、非障害ファイルモビリティーやクライアント側のミラーリングなどの高度な機能を有効にし、データベース、大量のデータ、仮想化などの領域のユーザービリティーを強化します。
NFS フレキシブルファイルレイアウトの詳細は、https://datatracker.ietf.org/doc/draft-ietf-nfsv4-flex-files/ を参照してください。
Btrfs ファイルシステム
Btrfs (B-Tree)ファイルシステムは、Red Hat Enterprise Linux 7.2 ではテクノロジープレビューとしてサポートされます。このファイルシステムは、高度な管理、信頼性、スケーラビリティー機能を提供します。これにより、ユーザーはスナップショットを作成でき、圧縮および統合デバイスの管理が可能になります。
pNFS ブロックレイアウトのサポート
テクノロジープレビューとして、アップストリームコードが Red Hat Enterprise Linux クライアントにバックポートされ、pNFS ブロックレイアウトサポートが提供されます。