在vgextend扩容vdo设备时出现“Devices have inconsistent logical block sizes”报错

Virtual Data Optimizer(VDO)技术以去重压缩和精简配置的方式为linux提供内联数据精简。当构建一个VDO卷以及规划逻辑存储量时需要指定要在其上设置的块设备。部署VDO可以为块设备和文件访问以及本地和远程存储提供去重的存储。由于VDO使用去重的存储作为标准的linux块设备,你可以将其用于标准文件系统iSCSI和FC目标驱动程序,或统一存储。
当管理的是vm或容器时,建议精简逻辑存储与物理存储比例设置为10:1,就是如果你利用的是1TB的物理磁盘,你可以假装它是10TB的逻辑存储。对于对象存储,比如Ceph,建议使用3:1的逻辑存储,1TB物理存储可以当3TB逻辑存储。无论哪种情况都可以在VDO提供的逻辑设备上放置文件系统,然后使用它作为分布式云存储架构的一部分。由于VDO是精简配置的,文件系统和应用只能看到逻辑空间使用情况而不清楚物理空间情况,应该使用脚本监控实际可用空间并且当超过阈值时报警。
无法使用VDO设备扩展VG,将错误获取为:

[root@rhel8 test4]# vgextend vg1 /dev/mapper/vdo4
Devices have inconsistent logical block sizes (512 and 4096).

由于sd设备和VDO设备上物理卷的块大小不一致,vgextend失败。
在vgextend扩容vdo设备时出现“Devices have inconsistent logical block sizes”报错

解决方案

默认情况下,禁用”allow_mixed_block_sizes”。在lvm.conf文件中启用allow_mixed_block_sizes,以允许同一VG具有两个具有不同块大小的PV:

[root@rhel8 test4]# cat /etc/lvm/lvm.conf | grep -i "allow_mixed_block_sizes" | grep -v "#"
allow_mixed_block_sizes =1

VDO的默认逻辑块大小为4096K(8个扇区)。
默认情况下,两个不同PV的VG需要相同的逻辑块大小。要在同一VG中使用两个不同的块大小,请在lvm.conf文件中启用”allow_mixed_block_sizes”。

原创文章,作者:保哥运维实战侠笔记,如若转载,请注明出处:https://www.shizhanxia.com/biji/406.html

发表评论

登录后才能评论