9.9. 创建带有 DM 完整性的 RAID 逻辑卷
当您创建一个具有设备映射器(DM)完整性的 RAID LV 或者在现有 RAID 逻辑卷(LV)中添加完整性时,它会降低因为软损坏而丢失数据的风险。在使用 LV 前,等待完整性同步和 RAID 元数据完成。否则,在后台进行的初始化可能会影响 LV 的性能。
设备映射程序(DM)完整性与 RAID 级别 1、4、5、6 和 10 一起使用,用于缓解或防止软崩溃导致数据丢失。RAID 层可确保数据没有破坏的副本可以修复软崩溃错误。
流程
创建具有 DM 完整性的 RAID LV。以下示例在 my_vg 卷组中创建一个名为 test-lv 的 RAID LV,可用大小为 256M 和 RAID 级别 1:
lvcreate --type raid1 --raidintegrity y -L 256M -n test-lv my_vg
# lvcreate --type raid1 --raidintegrity y -L 256M -n test-lv my_vg Logical volume "test-lv" created.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意要在现有 RAID LV 中添加 DM 完整性,请使用以下命令:
lvconvert --raidintegrity y my_vg/test-lv
# lvconvert --raidintegrity y my_vg/test-lv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 RAID LV 中添加完整性限制了您可以在那个 RAID LV 上执行的一些操作。
可选:在执行某些操作前删除完整性。
lvconvert --raidintegrity n my_vg/test-lv
# lvconvert --raidintegrity n my_vg/test-lv Logical volume my_vg/test-lv has removed integrity.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
查看有关添加的 DM 完整性的信息:
查看在 my_vg 卷组中创建的 test-lv RAID LV 的信息:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 下面描述了此输出的不同选项:
g
属性-
它是 Attr 列下的属性列表,表示 RAID 镜像使用完整性。完整性将校验和存储在
_imeta
RAID LV 中。 Cpy%Sync
列- 它指示顶层 RAID LV 和每个 RAID 镜像的同步进度。
- RAID 镜像
-
它通过
raid_image_N
在 LV 列中指示。 LV
列- 它确保对顶层 RAID LV 和每个 RAID 镜像显示 100% 同步进度。
显示每个 RAID LV 的类型:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有一个增量的计数器,它计算在每个 RAID 镜像上检测到的不匹配数。查看 my_vg/test-lv 下的
rimage_0
检测到的数据不匹配:lvs -o+integritymismatches my_vg/test-lv_rimage_0
# lvs -o+integritymismatches my_vg/test-lv_rimage_0 LV VG Attr LSize Origin Cpy%Sync IntegMismatches [test-lv_rimage_0] my_vg gwi-aor--- 256.00m [test-lv_rimage_0_iorig] 100.00 0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这个示例中,完整性还没有检测到任何不匹配的数据,因此
IntegMismatches
计数器会显示 0 (0)。在
/var/log/messages
日志文件中查看数据完整性信息。例如,如果 dm-integrity 不匹配,您会看到以下输出:
device-mapper: integrity: dm-12: Checksum failed at sector 0x24e7
device-mapper: integrity: dm-12: Checksum failed at sector 0x24e7
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果是 dm-integrity 数据更正,您会看到以下内容:
md/raid1:mdX: read error corrected (8 sectors at 9448 on dm-16)
md/raid1:mdX: read error corrected (8 sectors at 9448 on dm-16)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow