冗長性を維持しながらパフォーマンスを向上させるために、使用されるディスクの数を同じに保ちながら、NAS のルート ファイル システムを RAID 5 論理ボリュームから RAID 10 論理ボリュームに変換しようとしています。
でこれマニュアル ページのセクションではlvmraid
、間接的な変換によって RAID 10 と RAID 5 を変換できることが示されています。
現在、以下の買収転換が可能です。
...
- ストライプ/raid0とraid5の間。
...
- ストライプ/raid0とraid10の間。
しかし、適切なlvconvert
コマンドを(同様のtest
LV 上で)繰り返し実行し、中間変換を実行するように求められた場合、最終的に RAID 0 から RAID 10 に変換する最後のステップで次のエラーが発生します。
root@nas:~# lvcreate --type raid5 -i 3 -n test -L 100M vg
Using default stripesize 64.00 KiB.
Rounding size 100.00 MiB (25 extents) up to stripe boundary size 108.00 MiB (27 extents).
Logical volume "test" created.
root@nas:~# lvconvert vg/test --type raid10 -m 1 -i 2
Using default stripesize 64.00 KiB.
Replaced LV type raid10 (same as raid10_near) with possible type raid5_n.
Repeat this command to convert to raid10 after an interim conversion has finished.
Converting raid5 (same as raid5_ls) LV vg/test to raid5_n.
Are you sure you want to convert raid5 LV vg/test? [y/n]: y
Logical volume vg/test successfully converted.
root@nas:~# lvconvert vg/test --type raid10 -m 1 -i 2
Using default stripesize 64.00 KiB.
Replaced LV type raid10 (same as raid10_near) with possible type raid0_meta.
Repeat this command to convert to raid10 after an interim conversion has finished.
Are you sure you want to convert raid5_n LV vg/test to raid0_meta type? [y/n]: y
Logical volume vg/test successfully converted.
root@nas:~# lvconvert vg/test --type raid10 -m 1 -i 2
Using default stripesize 64.00 KiB.
Are you sure you want to convert raid0_meta LV vg/test to raid10 type? [y/n]: y
Insufficient suitable allocatable extents for logical volume : 30 more required
root@nas:~#
物理エクステントを解放して LV サイズを縮小しても、同じエラーが発生します。すべての物理ボリュームは割り当て可能です。
出力は次のとおりですvgdisplay
。
--- Volume group ---
VG Name vg
System ID
Format lvm2
Metadata Areas 4
Metadata Sequence No 333
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 2
Max PV 0
Cur PV 4
Act PV 4
VG Size <3.64 TiB
PE Size 4.00 MiB
Total PE 953864
Alloc PE / Size 943654 / <3.60 TiB
Free PE / Size 10210 / 39.88 GiB
VG UUID PF08Ce-xvsS-7KsA-0Vw6-zkXR-jyUf-ocDWDW
このエラーを解決するにはどうすればよいですか? 必要に応じてファイル システムを縮小し、変換された LV に同じ PE を使用したいと思います。
答え1
この説明では、ディスクディスク、パーティション、その他の論理コンテナを意味します。ディスク同じ大きさであると考えられ、ユニットストレージ容量(1GB、1TBなど、何でも構いません)。
- RAID 5は2つの有効なストレージユニットに3つのディスクを使用します
- RAID 0は2つのディスクを使用して2つの有効なストレージユニットを構成します。
- RAID 10 は、1 つの有用なストレージ ユニットに 2 つのディスクを使用します。通常、RAID 10 は RAID 0 (または vv) の上に RAID 1 が追加されたものとして考えることができるため、2 つの有用なストレージ ユニットに 4 つのディスクを使用することになります。
また
- RAID 5からRAID 0に変換すると、ストレージユニットが1つ残ります(つまり、1つのディスクが予備になります)。
- RAID 0 から RAID 10 に変換する場合、変換するユニットごとに追加のストレージ ユニットが必要になります (つまり、現在使用している 2 つのディスクに加えて 2 つの追加ディスク)。
結果: 最初は 3 枚のディスクがあったので、ディスクが 1 枚足りません。
1 つのオプションとしては、RAID 0 アレイを 2 つのディスクから 1 つに減らすことができるかどうか確認することが考えられますが、これは元の RAID 5 アレイが半分しか使用されていないことを前提としています。もう 1 つのオプションは、4 つ目のディスクを入手することです。