11.9. ファイルシステムおよびストレージ
LUKS ボリュームを格納する LVM mirror
デバイスが応答しなくなることがある
セグメントタイプが mirror
のミラーリング LVM デバイスで LUKS ボリュームを格納すると、特定の条件下で応答しなくなる可能性があります。デバイスが応答しなくなると、すべての I/O 操作を拒否します。
耐障害性のソフトウェア定義ストレージに、LUKS ボリュームをスタックする必要がある場合に、この問題を回避するには、Red Hat はセグメントタイプが mirror
ではなく raid1
の LVM RAID 1 デバイスを使用することを推奨します。
raid1
のセグメントタイプは、デフォルトの RAID 設定タイプで、mirror
の代わりに、推奨のソリューションとしてこのタイプが使用されます。
mirror
デバイスを raid1
に変換するには、ミラーリングされた LVM デバイスの RAID1 デバイスへの変換 を参照してください。
Bugzilla:1730502[1]
/boot
ファイルシステムを LVM に配置することができない
/boot
ファイルシステムを LVM 論理ボリュームに配置することはできません。この制限は、以下の理由により存在します。
-
EFI システムでは、EFI システムパーティション が従来の
/boot
ファイルシステムとして機能します。uEFI 標準では、特定の GPT パーティションタイプと、このパーティションの特定のファイルシステムタイプが必要です。 -
RHEL 8 は、システムブートエントリーに Boot Loader Specification (BLS) を使用します。この仕様では、プラットフォームのファームウェアが
/boot
ファイルシステムを読み込める必要があります。EFI システムでは、プラットフォームファームウェアは uEFI 標準で定義された/boot
設定のみを読み取ることができます。 - GRUB 2 ブートローダーでの LVM 論理ボリュームに対するサポートは完全ではありません。Red Hat は、uEFI や BLS などの標準があるので、この機能のユースケース数が減少しているため、サポートを改善する予定はありません。
Red Hat では、LVM での /boot
のサポートを提供する予定はありません。代わりに、Red Hat は、/boot
ファイルシステムを LVM 論理ボリュームに配置する必要がないシステムスナップショットおよびロールバックを管理するツールを提供します。
Bugzilla:1496229[1]
LVM で、複数のブロックサイズを持つボリュームグループが作成できない
vgcreate
または vgextend
などの LVM ユーティリティーでは、物理ボリューム (PV) の論理ブロックサイズが異なるボリュームグループ (VG) を作成できなくなりました。別のブロックサイズの PV で基礎となる論理ボリューム (LV) を拡張するとファイルシステムがマウントに失敗するため、LVM はこの変更を採用しました。
ブロックサイズが混在する VG の作成を再度有効にするには、lvm.conf
ファイルの allow_mixed_block_sizes=1
オプションを設定します。
LVM writecache
の制限
writecache
LVM キャッシュメソッドには以下の制限がありますが、cache
メソッドには存在しません。
-
pvmove
コマンドを使用すると、writecache
論理ボリュームに名前を付けることはできません。 -
writecache
を指定した論理ボリュームは、シンプールまたは VDO と組み合わせて使用できません。
以下の制限は、cache
メソッドにも適用されます。
-
cache
またはwritecache
がアタッチされている間は、論理ボリュームのサイズを変更することはできません。
Jira:RHELPLAN-27987[1]、Bugzilla:1808012、Bugzilla:1798631
NVMe/TCP ドライバーを使用する場合、デバイスマッパーマルチパスがサポートされない
NVMe/TCP デバイス上でデバイスマッパーマルチパスを使用すると、パフォーマンスとエラー処理が低下する可能性があります。この問題を回避するには、DM マルチパスツールの代わりにネイティブ NVMe マルチパスを使用します。RHEL 8 の場合、カーネルコマンドラインにオプション nvme_core.multipath=Y
を追加できます。
Bugzilla:2022359[1]
blk-availability systemd
サービスは、複雑なデバイススタックを非アクティブ化する
systemd
では、デフォルトのブロック非アクティブ化コードは、仮想ブロックデバイスの複雑なスタックを常に正しく処理するとは限りません。一部の設定では、シャットダウン中に仮想デバイスが削除されない場合があり、エラーメッセージがログに記録されます。この問題を回避するには、次のコマンドを実行して、複雑なブロックデバイススタックを非アクティブ化します。
# systemctl enable --now blk-availability.service
その結果、複雑な仮想デバイススタックはシャットダウン中に正しく非アクティブ化され、エラーメッセージは生成されません。
Bugzilla:2011699[1]
XFS クォータ警告が頻繁にトリガーされる
クォータタイマーを使用すると、クォータ警告が頻繁にトリガーされるため、ソフトクォータが必要以上に速く実行されます。この問題を回避するには、警告のトリガーを妨げるソフトクォータを使用しないでください。その結果、警告メッセージの量はソフトクォータ制限を強制せず、設定されたタイムアウトを尊重するようになります。
Bugzilla:2059262[1]