Linux MD RAID 10アレイを拡張して、より大きなディスクを使用する

Linux MD RAID 10アレイを拡張して、より大きなディスクを使用する

私の理解では、これは可能ですが、正確にどのように行うべきかについての明確な答えがどこにも見つかりません。また、自分で実験してデータを失うリスクを冒したくないので、ここで質問しています。

CentOS を実行する 5 つのディスクを備えたホーム サーバーがあります。1 つは OS を保持する SSD です。残りの 4 つのディスクは mdraid で RAID10 に構成された 4TB ハードドライブです。使用しているファイル システムは xfs です。

4TB ディスクを 8TB ディスクに交換することを検討しています。新しい RAID を再構成してデータを失うことなくこの交換を行うには、具体的に何をする必要がありますか?

Details output:

[root@fluttershy ~]# mdadm -D /dev/md127
/dev/md127:
        Version : 1.2
  Creation Time : Mon Apr 18 12:46:24 2016
     Raid Level : raid10
     Array Size : 7813771264 (7451.79 GiB 8001.30 GB)
  Used Dev Size : 3906885632 (3725.90 GiB 4000.65 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Mon Jun 13 11:04:41 2016
          State : clean 
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : fluttershy:data  (local to host fluttershy)
           UUID : aa8f857a:g8bd0344:06d2f6d3:bac01a46
         Events : 13440

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync set-A   /dev/sda1
       1       8       17        1      active sync set-B   /dev/sdb1
       2       8       33        2      active sync set-A   /dev/sdc1
       3       8       49        3      active sync set-B   /dev/sdd1

答え1

各ディスクに対して以下の手順を実行し、/dev/sda1必要に応じて他のディスクと交換してください。全て次のディスクに進む前に、1 つのディスクに対してこれらの手順を実行してください。

  • ディスクを故障としてマークし、MD がディスクの使用を停止するようにします。mdadm --manage /dev/md127 --fail /dev/sda1
  • アレイからディスクを削除します。mdadm --manage /dev/md127 --remove /dev/sda1
  • ディスクを物理的に交換します。
  • 0xDAディスク全体にまたがる 1 つのパーティションで、タイプを使用して新しいディスクをパーティション分割します。
  • 新しいディスクをアレイに追加します。mdadm --manage /dev/md127 --add /dev/sda1

交換ディスクを追加すると、MDはアレイを再構築します。再構築が完了していることを確認してください。前に次のディスクに進みます。 を実行すると、アレイの状態を確認できますcat /proc/mdstat

一度全てディスクの交換が完了し、アレイが再構築されたら、アレイを拡張して、すべてのディスクの最大容量を で埋めますmdadm --grow /dev/md127 --size=max。そこからファイルシステムのサイズを変更して、拡張された RAID を埋めることができます。この場合、xfs_growfsコマンドを使用します。

MDアレイの拡張方法の詳細については、Linux RAID ウィキ

他のディスク操作タスクと同様に、開始する前にバックアップを作成する必要があります。

答え2

まず、各ディスクを 1 つずつ交換する必要があります。

これを行うには、各ディスクを「故障」させ、新しい 8Tb の交換品と交換します。実際、予備のポートがある場合は、追加のディスクを追加し、RAID からディスクを削除して故障のリスクを高める代わりに、mdadm で「交換」を行うことができます。

この質問は、私が見つけることができる「安全に」行うための最良の方法を詳しく説明しています

これを実行したら、既存の FS を新しく作成したスペースに拡張するだけです。これを行うコマンドは 'xfs_growfs' のようですが、xfs の経験がないため、これを正確にどのように行うのか説明できません。

いつものように、バックアップを用意しておいてください (RAID はバックアップではありません)。

関連情報