私が理解していることから、これは可能ですが、正確にどのように対処するかについての正解はどこにも見つかりません。また、自分で実験してデータを失うリスクを冒したくないので、ここで質問します。
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
ディスクごとに次の手順を実行します。 /dev/sda1
を必要に応じて他のディスクに置き換えます。次のディスクに進む前に、1つのディスクに対してこれらの手順をすべて完了する必要があります。
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
を実行すると、アレイのステータスを確認できます。
allのディスクがすべて交換され、アレイが再構築されたら、アレイを拡張して、すべてのディスクの最大容量をmdadm --grow /dev/md127 --size=max
で埋めます。 。そこからファイルシステムのサイズを変更して、拡張RAIDをいっぱいにすることができます。あなたの場合、xfs_growfs
コマンドを使用してください。
MDアレイを拡張する方法の詳細については、 Linux RAID wiki を参照してください。
他のディスク操作タスクと同様に、開始する前にバックアップを取る必要があります。
まず、各ディスクを1つずつ交換する必要があります。
これを行うには、各ディスクを「失敗」させ、新しい8Tbの代替品と交換します。実際、スペアポートがある場合は、追加のディスクを追加してから、ディスクを削除する代わりにmdadmを「replace」することができます。襲撃と失敗のリスクが高い。
この質問では、「安全に」それを行うための最善の方法について詳しく説明しています
これを実行したら、既存のFSを新しく作成されたスペースに拡張するだけです。このためのコマンドは 'xfs_growfs'のようですが、私は経験がありません。正確にこれを行う方法を説明するxfs。
いつものように、バックアップを用意してください(そして、レイドはバックアップではありません!)。