
LVM を使用する mdadm raid から純粋な LVM にインストールを移行するため、元の raid パーティションを LVM グループに別のパーティションとして追加します。
# lvcreate -L 240G -n thin pve /dev/nvme0n1p2
Logical volume "thin" created.
次に、別のディスク/パーティションにミラーを追加します。
# lvconvert --type raid1 --mirrors 1 pve/thing /dev/nvme1n1p2
Logical volume pve/thin successfully converted.
LXC用のシンプールストレージシステムを使用すると、それをシンプールに変換できると仮定します。
# lvconvert --type thin-pool pve/thin
Converted pve/thin to thin pool.
すべてがうまくいくようですが、問題は、最後の変換が以前の変換に影響するかどうかわからないことです。その理由は、リストを作成すると次のような結果がlvs
得られるためです。
thin pve twi-a-tz-- 240,00g 0,00 10,42
プロパティ1と7はこれがThinpoolであることを示していますが、raid1や同期された値への言及はありません。
lvs -a -o +devices
2つのパーティションにミラーリングされているとマークされていますが、
[thin_tdata] pve rwi-aor--- 240,00g 24,17 thin_tdata_rimage_0(0),thin_tdata_rimage_1(0)
[thin_tdata_rimage_0] pve iwi-aor--- 240,00g /dev/nvme0n1p2(67074)
[thin_tdata_rimage_1] pve Iwi-aor--- 240,00g /dev/nvme1n1p2(67075)
[thin_tdata_rmeta_0] pve ewi-aor--- 4,00m /dev/nvme0n1p2(128514)
[thin_tdata_rmeta_1] pve ewi-aor--- 4,00m /dev/nvme1n1p2(67074)
[thin_tmeta] pve ewi-ao---- 120,00m /dev/sdd2(0)
今の問題は、シンプール「背面」でRAIDがまだ機能しているのか、それとも今割り当てられていますが、今は使用されていないのかということです。仮想プールを作成してそれを--raid1
型に変換すると、エラーが返されます。
lvs
このシナリオに関するドキュメントが見つからず、typeを返してドライブの状態を監視する予定なので、これが機能しているかどうかlvm-raidの状態を監視する方法がわかりませんr
。
答え1
はい、RAID 1を使用する仮想プールを使用することが可能であり、設定はほぼ正確です。問題は、メタデータがRAID 1ではなくリニアであるため、ドライブを紛失した後に仮想プールが破損することです。メタデータ用に別々のRAID 1 LVを作成した後、--poolmetadata <vg>/<metadata lv>
RAID LVをシンプールに変換するときに使用する必要がありますlvconvert
。
バラよりlvmthin マンページ部分Raidを使用してデバイスエラーを許可する詳細については。
マニュアルページの例:
# lvcreate --type raid1 -m 1 -n pool0 -L 10G vg /dev/sdA /dev/sdB
# lvcreate --type raid1 -m 1 -n pool0meta -L 1G vg /dev/sdC /dev/sdD
# lvconvert --type thin-pool --poolmetadata vg/pool0meta vg/pool0
この設定で出力しますlvs -a
。
$ sudo lvs raid_test -a
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
[lvol0_pmspare] raid_test ewi------- 12,00m
pool0 raid_test twi-a-tz-- 100,00m 0,00 10,29
[pool0_tdata] raid_test rwi-aor--- 100,00m 100,00
[pool0_tdata_rimage_0] raid_test iwi-aor--- 100,00m
[pool0_tdata_rimage_1] raid_test iwi-aor--- 100,00m
[pool0_tdata_rmeta_0] raid_test ewi-aor--- 4,00m
[pool0_tdata_rmeta_1] raid_test ewi-aor--- 4,00m
[pool0_tmeta] raid_test ewi-aor--- 12,00m 100,00
[pool0_tmeta_rimage_0] raid_test iwi-aor--- 12,00m
[pool0_tmeta_rimage_1] raid_test iwi-aor--- 12,00m
[pool0_tmeta_rmeta_0] raid_test ewi-aor--- 4,00m
[pool0_tmeta_rmeta_1] raid_test ewi-aor--- 4,00m
属性出力の問題は、lvs
最初のビットだけがLVタイプを指定するために使用されることです。 LV(r)aid
と(t)hin pool
シーンプールの両方が勝利しているように見え、そこにのみ行くことができますt
。