web-dev-qa-db-ja.com

luksで暗号化された外部raid5アレイを成長させることはできますか?

外部RAIDアレイ(ハードウェアraid5)を購入する予定です。私の意図は、最初に4つのディスクを装備し、luksとdm-cryptを使用して暗号化することです。私の質問は次のとおりです。ディスクをホットスワップし、暗号化されたRAIDを拡張して、1つまたは2つのディスクを合計6つ追加できますか?

理由はわかりませんが、申し訳ありませんが安全です。それで、dm-cryptはパーティションサイズの増加に対して安定していますか?

4
con-f-use

うん、確かにできる。

どうやるか

最初に、次のコマンドで追加のドライブをホットスペアとしてアレイに追加する必要がありました。

mdadm --add /dev/md2 /dev/sdc3

/ dev/md2がraidで、sdc3が追加のディスクです。

次に、配列を次のように成長するように指示しました[...]:

"mdadm --grow -n 12 /dev/md2".

配列が新しいレイアウトに再構築されるのを約16時間待ちました。 [...] cat /proc/mdstatをチェックして、進行状況を確認します。

次に、暗号化されたパーティションが大きいことを通知する必要がありました。 [...]

cryptsetup luksOpen /dev/md2 storage
cryptsetup resize storage

「ストレージ」は、/dev/mapper/sotrageのような暗号化されたデバイスのラベルです。

これがLVMパーティションの場合、上記の代わりにpvresizeを実行する必要があります。最後に、ファイルシステムのサイズを大きくする必要がありました。 [...]

resize2fs /dev/mapper/storage

これを行っている間にアレイ上のデータを失いますか?いいえ、すべてのデータを保持します。シェイプを変更する前に「dd if =/dev/md2 of =/dev/zero」を実行して、シェイプを変更する前にドライブに不良ブロックがないことを確認しました。この種の検証を実行すると、通常は使用されない限界セクターを見つけることができます。これは、RAIDアレイの実行の重要な部分です。また、リシェイプを実行する前に、故障したドライブがないことを確認してください。

その他の便利なビット:

RAIDのサイズ変更が完了するまで、ファイルシステムを拡張することはできません。

デバイスの使用中にRAID-5のサイズ変更をしても安全ですか?はい、そうです。それはどこにあるかを追跡するように設計されているため、アレイの成長中に再起動することもでき、中断したところから再開します。

ソース: http://www.tummy.com/journals/entries/jafo_20080502_154339

5
Regan W

ほんの少しの説明、弱い歯のためのかみ砕いた知恵。多くのLinuxドキュメントと同様に、この役立つチュートリアルは、一部の一般ユーザーが持っている知識よりも少し多くの知識があることを前提としています。

/ devディレクトリを見ると、RAIDアレイの名前がわかります。md#になります。 md0またはmd1など。RAIDアレイの詳細を取得して正しいものを選択するには、次のコマンドを試してください。

 mdadm -D /dev/md#

は配列の番号です。次のような情報が表示されます。

Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : we:0  (local to Host we)
           UUID : 94777f33ltjj97
         Events : 136

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync   /dev/sda2
       1       8       18        1      active sync   /dev/sdb2
       2       8       34        2      active sync   /dev/sdc2
       4       8       50        3      active sync   /dev/sdd2

RAIDファイルシステムを拡張するコマンドには引用符はありません。「-n」は、アレイ内のドライブの新しい合計数を示します。したがって、RAID 5アレイを4台から5台のドライブに拡張する場合、これを使用できます。

mdadm --grow -n 5 /dev/md2

このコマンドを実行して、RAIDの組み込みがどのように行われているかを確認します。

cat /proc/mdstat

大きなドライブと遅いシステムでは、RAIDのサイズ変更に非常に長い時間、場合によっては数日かかる場合があります。 100%に達したら、次のステップに進むことができます。 LUKS暗号化パーティション上でLVMパーティションを作成している場合、最初に暗号化ボリュームのサイズを変更する必要があります。それを理解するには、/ dev/mapperフォルダーを調べます。 LVM論理ボリュームではなく、暗号化されたボリュームを選択します。システムが実行されているため、チュートリアルで最初に行うコマンドを実行する必要はないようです。

  cryptsetup luksOpen /dev/md0 md0_crypt

    *Device md0_crypt already exists*

2番目のコマンドが機能する場合、非常に多くのLinuxコマンドのように、何も出力されません。

cryptsetup resize md0_crypt

次に、LVMスキームのサイズを変更します。このコマンドでpvresizeコマンドを実行する対象を見つけました:pvs -o + tags

pvs -o +tags
  *PV         VG   Fmt  Attr PSize PFree PV Tags
  /dev/dm-0  vg0  lvm2 a--  1.02g    0* 

そのため、物理ボリュームでpvresizeコマンドを実行すると、成功したことがわかりました。

pvresize /dev/dm-0
  *Physical volume "/dev/dm-0" changed
  1 physical volume(s) resized / 0 physical volume(s) not resized*

次に、lvdisplayコマンドを使用して、拡張する論理ボリュームを決定します。これにより、論理ボリュームの名前がわかります。ボリュームグループの名前は/ devフォルダーにあります。私の場合、私は使用しました:

lvdisplay /dev/vg0

「LV名」というフィールドを見て、次のコマンドを使用して、論理ボリュームの1つにすべての新しいスペースを追加することにしました。

lvresize -l +100%FREE /dev/mapper/vg0-system
  Extending logical volume system to 7.17 GiB
  Logical volume system successfully resized

最後に、resize2fsコマンドを使用して、変更が有効になるようにLVMのサイズを変更できます。

resize2fs /dev/mapper/vg0-system
*resize2fs 1.42.5 (29-Jul-2012)
Filesystem at /dev/mapper/vg0-system is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/mapper/vg0-system to 1879040 (4k) blocks.
The filesystem on /dev/mapper/vg0-system is now 1879040 blocks long.*

そのプロセスが完了したら(時間がかかる場合があります)、「df -h」コマンドを使用して、ファイルシステムの新しいサイズを確認できます。プロセス全体が少し怖いので、他の人の不安を軽減するためにコマンドを詳しく書きたいと思いました。

5
user116919