LVM 中的“镜像”和“raid1”有什么区别?

Jul*_*ian 8 lvm mirroring raid1

在 lvconvert(8) 手册页上,它说:

--type SegmentType
       Used to convert a logical volume to another segment type  or  to
       explicitly  state  the  desired  RAID1 segment type ("mirror" or
       "raid1") when converting a linear logical  volume  to  a  mirror
       with the '-m' argument.
Run Code Online (Sandbox Code Playgroud)

但是“镜像”和“raid1”之间究竟有什么区别?

gri*_*erz 7

我还没有尝试过新的 LVM 段类型,但概述是它们支持 LVM 中的 Linux MD RAID 特性。也就是说,它们是使用 MD 代码的 RAID 级别 1、5、6 等,最终目标是删除 LVM 镜像的重复功能并使 MD 和 LVM 使用相同的代码。

这是非常新的东西,因此可能不适合生产设置。

例如,它仍然被认为是 RHEL 6.2 中的技术预览:

http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/6.2_Release_Notes/storage.html

  • RAID 的重点是使用多个物理磁盘来获得容错和/或提高性能。LVM 上的 mdadm 没有多大意义,但是当没有硬件突袭时,mdadm 上的 LVM 被认为是“最佳实践”。现在 LVM 支持 RAID 开箱即用,似乎更可取(由于提供的灵活性)而不是在 LVM 中使用 RAID 支持,但我认为 mdadm(或硬件 RAID)仍然需要可引导的容错设置。 (2认同)

小智 7

实际区别在于“raid1”镜像段类型始终将其日志(实际上,元数据子卷)存储在与被镜像的 lv 相同的 PV 上的磁盘上。您不再需要日志的第三个 pv,或将日志存储在内存中,因此--corelog--mirrorlog disk/core/mirrored选项lvconvert不适用于 raid1 镜像段类型。

另一个实际区别是您需要在两个 PV(原始和镜像)上额外增加 1 个 PE 以存储创建镜像时分配的日志。如果您1 extents needed, but only 0 available在尝试使用 来创建 raid1 类型镜像时看到错误lvconvert,这可能是因为每个 PV 上的日志没有允许 1 个 PE 额外空间。

从 2013 年 9 月左右开始,raid1 一直是 lvm2 中的默认镜像段类型。