物理和逻辑盘区大小

sag*_*gar 4 linux performance lvm

/dev/sdb1在 rhel 6.6 中创建了一个 36TB ( )的分区。现在我想将它用于 LVM。

  • 物理盘区、卷盘区和逻辑盘区的推荐大小是多少?
  • 创建时定义 PE、VE 和 LE 大小有多重要?

我想创建 10TB、10TB、6TB 的 LV 大小。我用于通过 NFS 和 samba 进行文件共享。性能应该不错。请指导我这个...

der*_*ert 10

首先,您对其中一些是什么感到困惑。您可以相当灵活地设置物理范围大小 ( vgcreate -s <size-of-PE>)。但没关系,您应该使用默认值。引用联机帮助页:

默认值为 4 MiB。... [H]使用大量区会减慢工具的速度,但不会影响逻辑卷的 I/O 性能。

当他们说“对 I/O 性能没有影响”时,他们的意思是字面意思。LVM 是设备映射器的包装器,LVM 工具不会向设备映射器公开物理范围大小。执行 I/O 的实际内核代码不知道扩展区大小。所以没关系,除非您需要一直运行lvcreate(等)作为工作负载的一部分。

(注意它会影响数据对齐;见下文。)

逻辑盘区的大小(用 设置lvcreate -l «number-of-extents»)只是指定逻辑卷大小的一种方式。LV 大小 = 物理盘区大小 * 盘区数。通常,尽管您会使用它,-L «size»因为这可以为您进行数学运算,并且让您指定人性化的尺寸,例如10T

我不确定您所说的“卷范围”是什么意思,除非您的意思与上述相同。或者,您的意思是物理卷的长度(以范围为单位),但这也只是指定大小的另一种方式。

你应该关心什么

在 36TB 时,您的 sdb 不太可能是普通的旧磁盘。您应该找出其对齐要求,并确保正确对齐所有内容。如果data_alignment_offset_detection(参见man 5 lvm.conf)在您的设置中工作,这是最简单的——然后 LVM 工具将为您处理这一切。(逻辑卷的)分配是在整个物理范围块中完成的,因此您可能希望 PE 大小是对齐大小的倍数。但在 4MiB,它可能已经是。未对齐会降低 I/O 性能,尤其是写入性能。

您还应该确保为您的工作负载使用适当的 RAID 级别。还要考虑电池支持的缓存。