まず、LUKS と LVM の順序は、異なる LV に対して異なる LUKS パスワードまたはその他の設定を使用するかどうかによって異なります。たとえば、LV ごとに異なるパスワードを設定する必要がある場合は、LVM の上に LUKS を配置する必要があります。一方、すべての LV が同じパスワードと keylen のような設定を共有している場合、複数の LUKS パーティションを持つことによるオーバーヘッドに対処する必要がないように、LVM の下に LUKS を配置する必要があります (パスワードを変更する必要がある場合に行う必要があります)。
次に、ほとんどの場合、RAID を最低レベルにして、1 つのディスクが故障したときに簡単かつ透過的に交換できるようにします。 LVM の上に RAID をセットアップする場合、1 つのディスクが故障したときに PV を交換する必要があり、それは首に大きな負担となります。また、LVM 上の RAID は、LVM の柔軟性を完全に無効にします。その後、おそらく RAID の上に LVM の第 2 層をセットアップする必要があります!
したがって、ほとんどの場合、ユーザーは単一のパスワードを使用するだけでよいので、これで十分です:
<ブロック引用>RAID --> LUKS --> LVM --> ext4
場合によっては、LVM を使用して複数の RAID デバイスを結合して大きなボリュームにする必要がある場合があります。その場合は、次のことができます。
<ブロック引用>RAID --> LVM --> LUKS (--> LVM) --> ext4
理論的には、すべてのレイヤーが正しく設定されている場合、順序がパフォーマンスに大きな影響を与えることはありません。 、実際には、このセットアップのパフォーマンスが特に悪いことは見たことがありません。最も重要なことは、おそらくアライメントです:
<オール>--dataalignment
を設定してください RAID チャンク サイズに合わせます (これが役立つ場合があります)。
また、SSD の場合は、rd.luks.options=discard
を追加して LUKS TRIM/DISCARD パススルーを有効にしてください。 /etc/default/grub
まで と discard
/etc/crypttab
まで (これらは Red Hat/Fedora Linux で私が行っていることです。Debian では少し異なるかもしれません。) 新しいカーネルを使用する場合、LVM と RAID は自動的に破棄をサポートするはずです。
もちろん、これらは一般的なガイドラインにすぎません。特別なニーズがある場合は、ここで質問やコメントを更新してください。
RAID、LUKS、LVM のすべてが必要な場合は、RAID -> LUKS -> LVM -> FS
をお勧めします . RAID --> LVM --> LUKS --> LVM --> FS
RAID -> LUKS -> LVM
に勝るものはありません - ボリュームを拡張するには、さらに RAID -> LUKS
を追加するだけです デバイスをボリューム グループに追加します。
RAID --> LVM --> LUKS --> FS
- 特定の論理ボリュームのみを暗号化すると、デフォルトですべてを暗号化しないという特徴がありますが (長所または短所と見なされる場合があります)、ルート FS の拡張が容易になります。
論理ボリュームの上に LUKS を拡張することは、ユーザーが間違った順序で拡張/サイズ変更した場合によくある問題の原因です。 md RAID デバイス全体に LUKS を配置すると、サイズ変更が簡単になります。新しい md デバイスを追加し、その上に LUKS を作成し、デバイスを /etc/crypttab に追加します。 (少なくとも Fedora および RHEL クローンでは) ボリューム グループを拡張します。ルート FS がボリューム グループにある場合は、別の rd.luks.uuid
を追加する必要があります。 カーネル コマンドラインへのエントリ (編集 /etc/default/grub grub.cfg を再生成します。)
LUKS -> RAID
通常は間違っています。データは複数回暗号化され、より多くの CPU サイクルが消費されますが、利益はありません。ディスクに障害が発生したときに、LUKS をセットアップせずに、誤って障害のあるディスクを新しいディスクに交換する可能性もあります。
伸縮:
伸ばすときは常にスタックの一番下から、縮小するときは一番上から。
例:
延長中 RAID -> LVM -> LUKS -> FS
(ボリューム グループに十分な空き容量がある場合、最初の 2 つの手順はオプションです):
縮小 RAID -> LVM -> LUKS -> FS
: