現在、RAID5アレイに3台の1.5TBディスクを持つファイルサーバーがあります。ほぼいっぱいなので、3つの追加ディスク(それぞれ1.5 TB)を入手しました。
6 TBのスペースで十分なので、RAID6に切り替えて、raid6の安全性を高めたいと思います。完全なバックアップがあります。つまり、新しいアレイを作成してバックアップを復元するだけですが、バックアップを復元せずに切り替えることをお勧めします。これは可能ですか?はいの場合、どのように?
お探しの用語は「RAIDレベルの移行」です。
this によると、それは可能です。まだ行っていませんが、手順は新しいドライブをホットスペアとして既存のアレイに追加し、mdadmを使用してRAIDレベルとRAIDデバイスの数を更新する必要があるようです。
これを行うには、最近のmdadmが必要です。mdadm-2.6.9(たとえば、centos 5.x)ではサポートされていないようですが、mdadm-3.1.4(たとえば、ubuntu 11.10)ではサポートされています。
Grow Grow (or shrink) an array, or otherwise reshape it in some way. Currently supported growth options including changing the active size of component devices and
changing the number of active devices in RAID levels 1/4/5/6, changing the RAID level between 1, 5, and 6, changing the chunk size and layout for RAID5 and
RAID5, as well as adding or removing a write-intent bitmap.
たとえば、最初に新しいホットスペアデバイス/ dev/sdgをRAID5アレイに追加します。
$ Sudo mdadm --manage /dev/md/md0 --add /dev/sdg
次に、RAID6アレイに変換し、クリーンな状態に再構築します。 --raid-devices 4は、新しいアレイに合計でいくつのドライブがあるかを示します。
$ Sudo mdadm --grow /dev/md/md0 --raid-devices 4 --level 6
これがどれほど速くなるのか私にはわかりません。ハードウェアRAIDコントローラーでRAIDレベルの移行を行った私の経験では、新しいアレイを最初から作成し、バックアップをそれに復元する方が迅速でした。
必須の警告:失敗の計画。バックアップを準備しておいて、ダウンタイムの可能性を考慮してください。
また、VMまたは以前同様の何かでテストしてください。これは私のメモからのものであり、長い間これを行っていません。これは不完全かもしれません。
アレイにディスクをadd
する必要があります。
mdadm --manage /dev/md0 --add /dev/sdf
3つのディスクのそれぞれについてこれを行い、それに応じてデバイス名を置き換えます。
配列を拡張します。
mdadm --grow /dev/md0 --level 6 --raid-devices 6
--backup-file
オプションを使用すると、停電が発生した場合でも、再起動後にデバイスを拡張し続け、データの損失を防ぐことができます。
mdadm --grow /dev/md0 --level=raid6 --raid-devices=6 --backup-file=/root/mdadm5-6_backup_md0
バックアップファイルは、拡張するアレイの一部ではないファイルシステムに保存する必要があります。
--backup-file=
は、--grow
を使用して、使用可能なスペアデバイスがない場合にRAID5またはRAID6のRAIDデバイスの数を増やしたり、RAIDレベルやレイアウトを縮小、変更したりするときに必要です。 RAIDデバイスの変更については、以下の「成長モード」セクションを参照してください。ファイルは、再形成されるRAIDアレイではなく、別のデバイスに保存する必要があります。
--continue
は、アセンブリの--freeze-reshape
オプションを補完するものです。 --grow
操作が中断され、アレイのアセンブリ中に--freeze-reshape
が使用されたために自動的に再起動されない場合に必要です。このオプションは、保留中の形状変更を続行するために、-G
、(--grow
)コマンドおよびデバイスと一緒に使用されます。形状変更の継続に必要なすべてのパラメーターは、配列メタデータから読み取られます。最初の--grow
コマンドで--backup-file=
オプションを設定する必要があった場合は、継続オプションにもまったく同じバックアップファイルを指定する必要があります。
--continue
オプションと一緒に渡された他のパラメーターは無視されます。