我使用LVM通过raid5通过lvcreate --type raid5 --size 2T -I 256K -i 3 -n my_lv my_vg设置我的低级存储
现在,我也想使用LVM在上面设置VDO。我知道这个手册页,但我尝试了lvconvert --type vdo-pool -V 20T my_vg/my_lv,只是在没有raid的情况下结束。
如果我在raid LV的顶部使用PV来设置vdo,那么VDO会得到一个功能齐全的dmeventd堆栈吗?
发布于 2020-11-30 17:29:11
您应该有一个受RAID保护的LVO卷,但是lvm本身在报告它时并不那么清楚。
我尝试使用CentOS 8.2框和RAID1 LVM卷,使用以下命令将其转换为vdo-pool类型:lvconvert --type vdo-pool -n VDOLV -V 1G vg_test/lv_test
如何检查RAID1是否正常工作?您需要向命令行传递一些附加选项。执行lvs -o +seg_type -a会产生以下结果:
[root@localhost ~]# lvs -o +seg_type -a
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Type
root system -wi-ao---- 50.00g linear
swap system -wi-ao---- 7.90g linear
VDOLV vg_test vwi-a-v--- 1.00g lv_test 0.00 vdo
lv_test vg_test dwi------- 8.00g 37.62 vdo-pool
[lv_test_vdata] vg_test rwi-aor--- 8.00g 100.00 raid1
[lv_test_vdata_rimage_0] vg_test iwi-aor--- 8.00g linear
[lv_test_vdata_rimage_1] vg_test iwi-aor--- 8.00g linear
[lv_test_vdata_rmeta_0] vg_test ewi-aor--- 4.00m linear
[lv_test_vdata_rmeta_1] vg_test ewi-aor--- 4.00m linear注意raid1段类型。dmsetup table显示(同样,请参阅RAID rimage/rmeta设备):
[root@localhost ~]# dmsetup table
vg_test-lv_test_vdata_rimage_1: 0 16777216 linear 230:16 10240
vg_test-lv_test-vpool: 0 2099200 vdo V2 /dev/dm-6 2097152 4096 32768 16380 on auto vg_test-lv_test-vpool maxDiscard 1 ack 1 bio 4 bioRotationInterval 64 cpu 2 hash 1 logical 1 physical 1
vg_test-lv_test_vdata: 0 16777216 raid raid1 3 0 region_size 4096 2 253:2 253:3 253:4 253:5
vg_test-VDOLV: 0 2097152 linear 253:7 1024
vg_test-lv_test_vdata_rimage_0: 0 16777216 linear 230:0 10240
vg_test-lv_test_vdata_rmeta_1: 0 8192 linear 230:16 2048
system-swap: 0 16572416 linear 8:2 104859648
vg_test-lv_test_vdata_rmeta_0: 0 8192 linear 230:0 2048
system-root: 0 104857600 linear 8:2 2048最后,我删除了一个块设备,并尝试重新导入池-它成功了(并对丢失的设备发出警告):
[root@localhost ~]# lvs -o +seg_type -a
WARNING: Couldn't find device with uuid 8jLeqt-TRKt-IVHy-JP0g-mAta-XL2k-cXpEdF.
WARNING: VG vg_test is missing PV 8jLeqt-TRKt-IVHy-JP0g-mAta-XL2k-cXpEdF (last written to /dev/zd16).
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Type
root system -wi-ao---- 50.00g linear
swap system -wi-ao---- 7.90g linear
VDOLV vg_test vwi-a-v-p- 1.00g lv_test 0.06 vdo
lv_test vg_test dwi-----p- 8.00g 37.63 vdo-pool
[lv_test_vdata] vg_test rwi-aor-p- 8.00g 100.00 raid1
[lv_test_vdata_rimage_0] vg_test iwi-aor--- 8.00g linear
[lv_test_vdata_rimage_1] vg_test Iwi-aor-p- 8.00g linear
[lv_test_vdata_rmeta_0] vg_test ewi-aor--- 4.00m linear
[lv_test_vdata_rmeta_1] vg_test ewi-aor-p- 4.00m linear所以,应该管用的。然而,RAID和VDO是LVM的相对新的补充(顺便说一句,LVM正在变得越来越复杂),在混合不同的段类型时应该小心。因此,我通常使用普通的mdadm来创建软件RAID数组,并在其之上分层LVM。
如果需要,在创建RAID和VDO卷之后,发布lvs -o +seg_type -a的输出,让我(和其他)检查您的LVM设置。无论如何,在将任何有价值的数据放入卷之前,一定要对RAID设置进行三次检查。
https://serverfault.com/questions/1044397
复制相似问题