Red Hat Training
A Red Hat training course is available for RHEL 8
8.19. 检查 RAID 逻辑卷中的数据一致性(RAID 清理)
LVM 提供对 RAID 逻辑卷的清理支持。RAID 清理是读取阵列中的所有数据和奇偶校验块的过程,并检查它们是否是分配的。
流程
可选:限制清理过程使用的 I/O 带宽。
当您执行 RAID 清理操作时,
同步操作
所需的后台 I/O 可能会将其他 I/O 应用到 LVM 设备,如卷组元数据更新。这可能导致其它 LVM 操作速度下降。您可以使用节流功能控制清理操作的速度。在下一步的
lvchange --syncaction
命令中添加以下选项:--maxrecoveryrate Rate[bBsSkKmMgG]
- 设置最大恢复率,以便使操作不会严重影响小的 I/O 操作。将恢复率设置为 0 表示它将不被绑定。
--minrecoveryrate Rate[bBsSkKmMgG]
-
设置最小恢复率,以确保
同步操作
的 I/O 获得最小吞吐量,即使存在大量 I/O。
指定比率,格式为“数量/每秒/阵列中的每个设备”。如果没有后缀,选项会假定为 kiB/每秒/每个设备。
显示阵列中未修复的差异的数量,没有修复它们:
# lvchange --syncaction check vg/raid_lv
修正阵列中的差异:
# lvchange --syncaction repair vg/raid_lv
注意lvchange --syncaction 修复
操作不执行与lvconvert --repair
操作相同的功能:-
lvchange --syncaction 修复
操作会在阵列中启动后台同步操作。 -
lvconvert --repair
操作修复或替换镜像或者 RAID 逻辑卷中失败的设备。
-
可选:显示 scrubbing 操作的信息:
# lvs -o +raid_sync_action,raid_mismatch_count vg/lv
raid_sync_action
字段显示 RAID 卷在执行的当前同步操作。可以是以下值之一:idle
- 所有同步操作完成(什么都不做)
resync
- 初始化阵列或在机器失败后恢复
recover
- 替换阵列中的设备
check
- 查找阵列的不一致
repair
- 查找并修复不一致
-
raid_mismatch_count
字段显示在检查
操作过程中找到的差异数。 -
Cpy%Sync
字段显示同步
操作的进度。 lv_attr
字段提供额外的指示。这个字段中的第 9 位显示逻辑卷的健康状况,它支持以下指示:-
M
(mismatches)表示 RAID 逻辑卷存在差异。这个字符在 scrubbing 操作侦测到部分 RAID 不一致时就会显示。 -
R (refresh)表示 RAID 阵列中的某个设备存在故障,且内核将其视为失败,即使 LVM 可以读取该设备标签,并认为该设备可以正常工作。
刷新逻辑卷通知内核该设备现在可用 ; 如果您怀疑设备失败,则替换该设备。
-
其他资源
-
如需更多信息,请参阅
lvchange (8)
和lvmraid (7)
man page。