SSブログ

mdadmでソフトRAIDを領域縮小してみる その1(RAID 5編) [Linux(LVM/RAID/Storage)]

 はい。領域を拡張したなら、今度は縮小してみたくなるのが世の常というもの。そんな訳で、RAIDアレイの縮小をやってみた。

 容量を指定して縮小するか、アレイを構成するディスクをアレイから引っこ抜くか、2通りの方法があるようだけども、おそらく前者のやり方は使い道がないと思われるので、アレイを構成するディスクを減らす方向でトライしてみることとした。

 まずはアレイの状態を確認するところから。RAID 5のアレイを5本のディスクで構成している。
# mdadm --misc --detail /dev/md0
/dev/md0:
        Version : 00.90.03
  Creation Time : Mon Nov 10 13:00:21 2008
     Raid Level : raid5
     Array Size : 40033536 (38.18 GiB 40.99 GB)
  Used Dev Size : 10008384 (9.54 GiB 10.25 GB)
   Raid Devices : 5
  Total Devices : 5
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Mon Nov 10 17:04:44 2008
          State : clean
 Active Devices : 5
Working Devices : 5
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : c6f7e061:1d02572e:f8555d58:8d5c0851
         Events : 0.6

    Number   Major   Minor   RaidDevice State
       0       3        5        0      active sync   /dev/hda5
       1       3        6        1      active sync   /dev/hda6
       2       3        7        2      active sync   /dev/hda7
       3       3        8        3      active sync   /dev/hda8
       4       3        9        4      active sync   /dev/hda9
# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 hda9[4] hda8[3] hda7[2] hda6[1] hda5[0]
      40033536 blocks level 5, 64k chunk, algorithm 2 [5/5] [UUUUU]

unused devices: (none)


 で、これを4本のディスクを構成するように変更した上で、ちゃんと状態がcleanになっているかどうかチェックしてみる。(単に1本引っこ抜くだけなら、デグレード状態にしてしまうという手もある。が、それでは耐障害性が無いのでRAID 5の意味がない)

 おそらく、コマンドは「mdadm --grow /dev/md0 --raid-disks=4」じゃないかと思われ。

 レッツトライ!

# mdadm --grow /dev/md0 --raid-disks=4
mdadm: /dev/md0: Cannot reduce number of data disks (yet).


 なんか違うらしい。
 じゃあ、ディスク1本にダメポマークを付けてデグレード状態にしてみて、そこからディスクさっきのコマンドを実行してみるとどうなるか?

# mdadm --manage /dev/md0 --fail /dev/hda9
mdadm: set /dev/hda9 faulty in /dev/md0
# mdadm --misc --detail /dev/md0
/dev/md0:
        Version : 00.90.03
  Creation Time : Mon Nov 10 13:00:21 2008
     Raid Level : raid5
     Array Size : 40033536 (38.18 GiB 40.99 GB)
  Used Dev Size : 10008384 (9.54 GiB 10.25 GB)
   Raid Devices : 5
  Total Devices : 5
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Mon Nov 10 17:19:47 2008
          State : clean, degraded
 Active Devices : 4
Working Devices : 4
 Failed Devices : 1
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : c6f7e061:1d02572e:f8555d58:8d5c0851
         Events : 0.8

    Number   Major   Minor   RaidDevice State
       0       3        5        0      active sync   /dev/hda5
       1       3        6        1      active sync   /dev/hda6
       2       3        7        2      active sync   /dev/hda7
       3       3        8        3      active sync   /dev/hda8
       4       0        0        4      removed

       5       3        9        -      faulty spare   /dev/hda9


 まずはここまでで本来5本のディスクで動作しているはずのRAIDアレイが4本で稼働状態になっている。ただ、このままではパリティデータからデータを逆算しながらの動作になっているし、そもそもこの状態からさらに1本ディスクが飛んだら全てダメになってしまう。
 ここでさっきのコマンドをもう一度試してみよう。

# mdadm --grow /dev/md0 --raid-disks=4
mdadm: /dev/md0: Cannot reduce number of data disks (yet).


 やはりダメらしい。

 RAIDのリビルドに154分もかかるらしいので、この続きはまた明日(以降)ということで。。。。(笑)
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。