跳到内容 中国
HP.com 主页 产品与服务 支持及驱动程序 解决方案 如何购买
» 联系惠普
更多选项
HP.com 主页
HP-UX 系统管理员指南:逻辑卷管理: HP-UX 11i v3 > 第 2 章 配置 LVM

规划性能

» 

技术文档资料

完整的 PDF 手册
» 反馈
内容从此开始:

 » 目录

 » 词汇表

 » 索引

本节介绍使用 LVM 获得可能的最佳性能的策略。其中包括下列主题:

常规性能因素

以下因素可影响系统总体性能,但不一定影响 LVM 的性能。

内存使用情况

LVM 使用的内存量取决于卷组创建时使用的值以及打开的逻辑卷数目。LVM 内存中最大的部分用于盘区映射。使用的内存与物理卷最大数目乘以每个卷组的每个物理卷的物理盘区最大数目所得的值成比例。

要考虑的其他内存参数因素包括预期的系统增长和需要的逻辑卷数。可以将卷组最大大小参数精确地设置为此时系统所需的值。但是,如果要通过另一个磁盘扩展卷组(或者将一个磁盘更换为较大的磁盘),则需要使用 vgmodify 命令。

CPU 使用率

与非 LVM 情况相比,通过观察空闲时间没有发现对系统 CPU 使用率有显著影响。

对于 LVM,需要额外的 CPU 周期来执行镜像写一致性高速缓存操作,这是唯一影响 CPU 使用率的可配置选项。

磁盘空间使用情况

LVM 在每个物理卷上为自己的元数据保留一些磁盘空间。使用的空间量与卷组创建时使用的最大值成正比。

内部性能因素

以下因素通过 LVM 直接影响 I/O 的性能。

调度策略

调度策略仅对于镜像影响较大。进行镜像时,顺序调度策略需要更多的时间来执行写入操作,执行次数与镜像数目成正比。例如,与并行策略相比,使用顺序调度策略时,包含三个数据副本的逻辑卷需要三倍的时间执行写入。读取请求始终只定向到一个设备。在并行调度策略中,LVM 会将每个读取请求定向到最空闲的设备。在顺序调度策略中,LVM 会将所有读取请求均定向到 lvdisplay –v 输出的左侧显示的设备。

镜像写一致性高速缓存

镜像写一致性高速缓存 (MWC) 将提供可能不再同步的镜像区域的列表。激活卷组以后,LVM 会将 MWC 中的所有区域和一个条目从一个完好的副本复制到其他所有副本。这一过程可确保镜像的一致性,但不能保证数据的质量。

对于向使用 MWC 的镜像逻辑卷发出的每个写入请求,LVM 可能会额外引入一个串行磁盘写入,以维护 MWC。是否会出现这种情况取决于访问的随机程度。

访问的随机程度越高,丢失 MWC 的可能性越大。要获取 MWC 条目,可能需要等到有一个条目可用时才能获取。如果当前 I/O 正在使用所有 MWC 条目,则给定的请求可能需要在请求队列中等待,直到某个条目可用。

对于镜像逻辑卷的另一个性能考虑因素是,在系统崩溃后对镜像副本之间的不一致性进行协调的方法。可以使用两种重新同步方法,即镜像一致性恢复 (MCR) 和“无”。是否使用 MWC 取决于哪方面的系统性能对您的环境更重要,即,是运行时性能更重要还是恢复时间更重要。

例如,在数据库系统中使用镜像的客户可能会对数据库逻辑卷选择“无”,这是因为数据库日志记录机制已提供了一致性恢复。如果希望获得快速恢复时间,用于日志的逻辑卷将使用 MWC,如果希望获得更高的运行时性能,则使用 MCR。通常,数据库日志由一个进程使用,并且是按顺序访问的,这意味着使用 MWC 几乎不会造成性能下降,因为大部分时间都在访问高速缓存。

磁盘跨越

对于多个进程使用最频繁的磁盘区域,HP 建议跨越尽可能多的物理卷分配该磁盘区域的数据空间。

卷组数

卷组数直接与 MWC 问题相关。由于每个卷组只有一个 MWC,因此,在使用 MWC 时,必须尽可能地使多个小型随机写入请求所使用的磁盘空间位于不同的卷组中。这是唯一会影响卷组数设置的性能考虑因素。

物理卷组

该因素可用于跨 I/O 通道强制分隔不同的镜像副本。必须定义物理卷组。该因素通过减少单点故障提高了可用性,并提供更快的 I/O 处理能力,因为此时硬件级的争用较少。

例如,在每个总线转换器有多个卡、每个卡有多个磁盘设备的系统中,创建物理卷组,使一个总线转换器的所有磁盘都位于一个组中,其他总线转换器上的所有磁盘位于另一个组中。该配置可确保创建所有镜像所使用的设备是通过不同的 I/O 路径访问的。

通过磁盘条带化提高性能

磁盘条带化可以将逻辑上相连的数据块(例如,同一个文件的组块)分配在多个磁盘上,从而在连续读取和写入大型文件时,提高 I/O 吞吐量,但在随机访问时没有必要。

磁盘条带化的缺点是,丢失一个磁盘会导致多个文件损坏,因为这些文件是有意分布在两个或多个磁盘上的。

对于存储大型文件的文件系统而言,如果经常需要连续读取或写入这些文件,且 I/O 性能非常重要,请考虑使用磁盘条带化技术。

使用磁盘条带化时,将创建跨越多个磁盘的逻辑卷,且允许连续的数据块放在不同磁盘上的逻辑盘区。例如,一个三个条带的逻辑卷的数据分布在三个磁盘上,每个磁盘存储该数据块的三分之一。每个三分之一块大小称为逻辑卷的条带大小。对于 1.0 版卷组,条带大小必须是介于 4 到 32768 之间的 2 的幂,而对于 2.0 版卷组,则必须是介于 4 到 262144 之间的 2 的幂。

磁盘条带化可以提高那些读写巨大的、按顺序访问的文件的应用程序的性能。同时在多个磁盘上执行数据访问与对一个磁盘执行相同操作相比,可以减少所需的时间。如果所有条带化磁盘都有自己的控制器,则每个磁盘可以同时处理数据。

可以使用标准命令来管理条带化逻辑卷。例如,lvcreatediskinfonewfsfsckmount 命令都可用于管理条带化逻辑卷。

下面的大部分准则都适用于 LVM 磁盘使用情况,尤其适用于可提高性能的条带化逻辑卷:

  • 分布在相似磁盘上的条带化逻辑卷可以实现最佳性能。磁盘在速度、容量和接口类型方面越接近,所实现的性能就越高。如果条带跨越速度不同的多个磁盘,则性能只相当于最慢的磁盘的性能。

  • 如果有多个可以连接磁盘的接口卡或总线,请尽可能在它们之间平均分布磁盘。也就是说,与每个接口卡或总线连接的磁盘必须在数量上大致相同。当使用多条总线并交错分布逻辑卷条带时,可以获得最高的 I/O 性能。例如,如果有两条总线,每条总线连接两个磁盘,磁盘的顺序应该是:磁盘 1 在总线 1 上,磁盘 2 在总线 2 上,磁盘 3 在总线 1 上,磁盘 4 在总线 2 上,如图 2-2 中所示。

    图 2-2 在总线之间交错放置磁盘

    在总线之间交错放置磁盘
  • 增加磁盘数不会提高性能,这是因为在条带化逻辑卷中组合使用多个磁盘所获得的最高效率会受到以下两个因素的限制:文件系统本身的最大吞吐量以及磁盘所连接的总线的最大吞吐量。

  • 对于用户很少且需要较大的连续传输的应用程序而言,磁盘条带化非常有用。但对于需要较小、并发、随机 I/O 的应用程序(例如,数据库),通常并不能通过磁盘条带化提高性能。假定有四个磁盘,条带大小为 512 字节。每个 2K 的请求都会发送到所有磁盘。磁盘完成条带化与完成一个 2 KB 的请求几乎是同时的。但是,多个 2K 的请求则都是连续的,因为所有磁盘都必须搜索每个请求。在非条带化的系统中,实际的性能可能会更好些,因为每个磁盘可以并行地为各个请求提供服务。

确定最佳条带大小

逻辑卷的条带大小确定了构成条带的每个数据块的大小。对于 1.0 版卷组,可将条带大小设置为介于 4 到 32768 之间的 2 的幂,而对于 2.0 版卷组,则可以设置为介于 4 到 262144 之间的 2 的幂。缺省值为 8192。

注释:逻辑卷的条带大小与磁盘的物理扇区大小无关,磁盘扇区大小通常为 512 字节。

条带化逻辑卷的使用方式将决定条带大小的指定值。

要获得最佳效果,请遵循下列准则:

  • 如果要将条带化逻辑卷用于 HFS 文件系统,请选择最接近文件系统块大小的条带大小。使用 newfs 命令,可以在建立文件系统时指定块大小,并为 HFS 提供缺省的 8K 块大小。

  • 如果要将条带化逻辑卷用作交换空间,请将条带大小设置为 16K,以获得最佳性能。有关配置交换的详细信息,请参阅“管理交换逻辑卷”

  • 如果希望将条带化逻辑卷用作原始数据分区(例如,用于直接使用设备的数据库应用程序),则条带大小必须大于或等于该应用程序的 I/O 大小。

可能需要进行一些试验,才能确定适于特定情况的最佳条带大小。要更改条带大小,请重新创建逻辑卷。

镜像与条带化之间的交互

镜像条带化逻辑卷可提高 I/O 读取性能,其方式与镜像非条带化逻辑卷相同。针对单个逻辑盘区同时发出的多个 I/O 读取请求使用两个或三个不同的物理卷,而不是只使用一个。条带化逻辑卷和镜像逻辑卷均遵循严格分配策略,也就是说,始终将数据镜像到不同的物理卷上。

通过 I/O 通道分离提高性能

I/O 通道分离是一种 LVM 配置方法,要求数据的镜像副本驻留在通过单独的主机总线适配器 (HBA) 和电缆访问的 LVM 磁盘上。I/O 通道分离可减少可能的单点硬件故障数目,从而实现更高的可用性和更高的性能。如果要通过一个卡镜像两个单独磁盘上的数据,则当卡出现故障时系统便会出现故障。

可以通过在不同的 HBA 之间镜像磁盘,将系统中的 I/O 通道分离为多个 HBA 和一个总线。可以通过建立称为 PVG 严格分配的策略,进一步确保通道分离,该策略要求在不同的物理卷组中镜像逻辑盘区。物理卷组是卷组中物理卷的子组。

ASCII 文件 /etc/lvmpvg 包含物理卷组的所有映射信息,但并不将映射记录在磁盘上。物理卷组没有固定的命名约定,可以将其命名为 PVG0、PVG1 等。可使用 vgcreatevgextendvgreduce 命令创建和更新 /etc/lvmpvg 文件,但也可以使用文本编辑器编辑该文件。

I/O 通道分离对数据库很有用,因为它可以提高可用性(LVM 在读取最便于访问的逻辑盘区上的数据上具有更大的灵活性),从而提高了性能。如果将物理卷组定义为跨越多个 I/O 设备,应确保即使一个 HBA 发生故障也不会造成数据丢失。

使用物理卷组时,请考虑对逻辑卷使用 PVG 严格分配策略。

打印版本
保密声明 使用本网站表示您同意其使用条件
© 2008 Hewlett-Packard Development Company, L.P.