AIX 5L™ Version 5.3 集成了大量的特性,这使得它比以前的操作系统发布版具有更强大的功能。IBM® 顾问 Shiv Dutta 关注于 AIX 5L Version 5.3 中的一些特性,这些特性增强了逻辑卷管理器 (LVM) 和 Enhanced Journal File System (JFS2) 的范围、功能和性能。

Shiv Dutta, 技术顾问, EMC

Shiv Dutta 是 IBM Systems and Technology Group 的一名技术顾问,他帮助独立软件供应商在 IBM System p 服务器上启用他们的应用程序。Shiv 有作为软件开发人员、系统管理员和讲师的丰富经验。他在 AIX 的系统管理、问题确定、性能调优和规模指导方面提供支持。Shiv 在 AIX 诞生之时就从事这方面的工作。



2006 年 12 月 14 日 (最初于 2005 年 4 月 14 日)

引言

本文是对 2006 年 6 月发布的“AIX 5L V5.3 中的存储管理”这篇文章的更新。其中简要介绍了逻辑卷管理器 (LVM) 的范围、功能和性能,以及 Enhanced Journal Filesystem (JFS2) 的某些特性,Enhanced Journal Filesystem (JFS2) 在 5300-05 Technology Level (TL)(2006 年 8 月发布)的 AIX 5L™ 中可用。在下面的讨论中,将对仅在 5300-05 TL 中可用的特性加以区分。


LVM 命令增强

在 AIX 5L Version 5.3 中,对下列的 LVM 命令进行了改进以增强它们的性能,比如与以前的 AIX® 发行版中的对应命令相比,它们需要的执行时间更短:

  • extendvg
  • importvg
  • mkvg
  • varyonvg
  • chlvcopy
  • mklvcopy
  • lslv
  • lspv

并发模式(经典的和增强的)

经典并发模式卷组 (Volumn Group, VG) 仅支持串行 DASD 和 SSA 磁盘以及 32 位内核。通过引入了所谓的增强并发模式 VG,AIX 5L Version 5.1 克服了所支持的磁盘类型的限制,增强并发模式对并发模式进行了扩展以支持所有其他的磁盘类型。尽管 AIX 5L Version 5.2 不允许创建经典并发模式 VG,但是的确提供了对它们的支持。而在 AIX 5L Version 5.3 中则彻底地删除了对经典并发模式 VG 的支持。如果在 AIX 5L Version 5.3 中试图导入经典并发模式 VG,那么将产生一个错误消息以通知用户将该 VG 转换为增强并发模式。


VG(常规、大容量和可扩展)

通常称为标准的或常规的 VG 类型,支持最多 32 个物理卷 (PV)。一个标准的或常规的 VG 是指每个 PV 不超过 1016 个物理分区 (PP),并且每个 VG 的逻辑卷的上限为 256。随后引入了一种新的 VG 类型,即大容量 VG。一个大容量 VG 支持多达 128 个 PV 和最多 512 个 LV。

AIX 5L Version 5.3 引入了一种称为可扩展的卷组(可扩展 VG)的新的 VG 类型。一个可扩展 VG 支持最多 1024 个 PV 和 4096 个 LV。PP 的最大数目适用于整个 VG,而不再根据每个磁盘对其进行定义。这使得我们能够通过较大数量的 PP,以较少数量的磁盘和细粒度的存储分配选项来配置 VG,其中这些 PP 的容量很小。可扩展 VG 可以容纳多达 2,097,152 (2048 K) 个 PP。与旧的 VG 类型一样,其大小使用兆字节为单位,并且大小变量必须等于 2 的整数幂。PP 的大小范围从 1 (1 MB) 开始,最大为 131,072 (128 GB)。这要比 AIX 5L Version 5.2 中的常规和大容量 VG 类型的最大值 1024 (1 GB) 大两个数量级。新的最大 PP 大小提供了支持 256 PB 个磁盘的体系结构。

下面的表 1 介绍了不同 VG 类型的配置限制的差异。请注意,用户可定义 LV 的最大数目等于每个 VG 的 LV 最大数目减 1,因为将保留一个 LV 给系统使用。因此,系统管理员可以在常规 VG、大容量 VG 和可扩展 VG 中分别配置 255、511 和 4095 个 LV。

表 1. VG 的配置限制
VG 类型PV 最大数目LV 最大数目每个 VG 的 PP 最大数目PP 最大容量
常规 VG 3225632,512 (1016 * 32)1 GB
大容量 VG128 512130,048 (1016 * 128)1 GB
可扩展 VG102440962,097,152128 GB

AIX 5L Version 5.3 中可扩展 VG 的实现,为给定的新 VG 类型的实例可以拥有的 PV 和 LV 数目提供了配置灵活性。该配置选项允许任何可扩展 VG 包含 32、64、128、256、512、768 或 1024 个磁盘以及 256、512、1024、2048 或 4096 个 LV。在为将来潜在的增长创建 VG 时,不需要配置 1024 个 PV 和 4096 个 LV 的最大值。通常可以在需要的时候增大初始设置。

System Management Interface Tool (SMIT) 和 Web-based System Manager Graphical User Interface 完全支持这种可扩展 VG。对现有的与 VG 管理任务相关的 SMIT 面板进行了更改,并且为可扩展 VG 类型添加了许多新的面板。例如,可以使用新的 SMIT 快速路径 _mksvg 来直接访问 Add a Scalable VG SMIT 菜单。

对用户命令 mkvgchvglsvg 进行了增强以支持可扩展 VG 类型。


针对 LV 的 striped column 支持

AIX 5L Version 5.3 提供了针对 LV 的 striped column 支持。这个新的特性允许 striped column 的扩展,即使磁盘阵列中的一个 PV 已满。在以前的 AIX 发行版中,只要定义磁盘阵列(独立磁盘的冗余阵列)的磁盘组中有足够的 PP,您就可以使用 extendlv 命令来增大 stripe LV 的大小。要扩展 stripe LV 以超过磁盘容量所规定的硬限制,唯一的办法就是重新构建整个 LV。您需要备份并删除该 striped LV,然后使用更大的 stripe 宽度重新创建 LV,接下来还要对 LV 数据进行相应的还原操作。为了克服这个耗时的过程所带来的缺点,AIX 5L Version 5.3 为 LV 引入了 striped column 的概念。

在 AIX 5L Version 5.3 以前,在创建 LV 时通过下列两种方法来确定 stripe LV 的 stripe 宽度:

  • 所有 PV 名称的直接说明
  • 分配给该 striped LV 的 PV 的最大数目的说明

在 AIX 5L 以前,对 striped LV 的配置不允许超过 stripe 宽度的上限。在 AIX 5L Version 5.3 中,该上限可以为 stripe宽度的倍数。由 stripe宽度确定的一组磁盘,将被看作一个 striped column 。请注意,如果您使用的是 RAID 10 配置,那么这个上限值与镜像副本的数目无关。

如果您使用 extendlv 命令将 stripe LV 扩展为超过第一个 striped column 的物理限制,那么 AIX 使用一整组新的磁盘来实现对附加逻辑分区的分配请求。如果您需要进一步扩展 LV,那么可以根据需要添加更多的 striped column ,只要不超过其上限。chlv -u 命令允许您增大这个上限,以便为 striped LV 的扩展提供附加的净空。您还可以使用增强的 extendlv 命令的 -u 标志,这样可以在一项操作中同时完成增大上限并扩展 LV。

对用户命令 mklvchlvextendlvmklvcopy 进行了增强以支持 AIX 5L Version 5.3 中引入的 striped column 的特性。


卷组 pbuf 池

LVM 使用一个称为 pbuf 的组成部件来控制挂起的磁盘 I/O。pbuf 是一个固定内存缓冲区。通常,LVM 为每个单独的 I/O 请求使用一个 pbuf,而不管传输的数据量有多大。在向 VG 添加新的 PV 时,AIX 创建了额外的 pbuf。在以前的 AIX 发行版中,pbuf 池是一种系统范围的资源,但是在 AIX 5L Version 5.3 中,LVM 为每个 VG 分配和管理一个 pbuf 池。对于那些具有大量 VG 的系统来说,这种增强可以支持高级的可扩展性和性能,并且适用于所有的 VG 类型。因为有了新的 pbuf 池的实现,AIX 可以显示和管理附加的 LVM 统计信息和调整参数。

现在,AIX 5L Version 5.3 中包括了 lvmo 命令。它为与新的 pbuf 池相关的管理任务提供了支持。您可以使用 lvmo 命令来显示 pbuf 和阻塞 I/O 的统计信息和 pbuf 可调参数的设置,不管该实体的范围是系统范围还是 VG 特定的。然而,lvmo 命令只允许更改专门用于特定 VG 的 LVM pbuf 可调参数的设置。ioo 命令继续管理系统范围的单独的 pbuf 可调参数。另外,与以前的 AIX 发行版一样,vmstat -v 命令仍用于显示整个系统中由于缺少空闲 pbuf 而阻塞的 I/O 的数目。


可变的逻辑磁道组

当 LVM 接收到一项 I/O 请求,在将请求传递到磁盘的设备驱动程序之前,它将 I/O 分解为逻辑磁道组 (LTG) 的大小。LTG 是 LV 的最大传输大小,并且对于 VG 中所有的 LV 都是一样的。AIX 5L Version 5.2 接受 128 KB、256 KB、512 KB 和 1024 KB 的 LTG 值。然而,现在许多磁盘都支持大于 1 MB 的传输大小。为了利用更大的传输大小并获得更好的磁盘 I/O 性能,AIX 5L Version 5.3 接受 128 KB、256 KB、512 KB、1 MB、2 MB、4 MB、8 MB 和 16 MB 的 LTG 大小值。

与以前的发行版相比,AIX 5L Version 5.3 还允许 LV 的 stripe大小大于所使用的 LTG 的大小,并且显著地扩展了有效 stripe大小的范围。Version 5.3 添加了对 2 MB、4 MB、8 MB、16 MB、32 MB、64 MB 和 128 MB 的 stripe大小的支持,以对以前的 AIX 发行版中 4 KB、8 KB、16 KB、32 KB、64 KB、128 KB、256 KB、512 KB 和 1 MB 的 stripe大小选项进行补充。

在 AIX 5L Version 5.2 中,通过 chvgmkvg 命令的 -L 标志来设置 LTG 大小。在 AIX 5L Version 5.3 中,通过 varyonvg 命令对其进行设置,并且使用 -M 标志。因此,所创建的 LTG 大小称为可变 LTG 大小。

下列命令将 tmpvg VG 的 LTG 大小设置为 512 KB:

# varyonvg -M512K tmpvg

LTG 大小的单位指定为 K 或 M,分别表示 KB 或 MB。当使用 -M 标志设置 LTG 大小时,如果磁盘的最大传输大小小于该 LTG 大小,那么 varyonvgextendvg 命令可能会执行失败。要找出您的磁盘所支持的最大 LTG 大小,可以使用带 -M 标志的 lquerypv 命令。其输出结果给出了以 KB 为单位的 LTG 大小,如下面的示例所示。

# /usr/sbin/lquerypv -M hdisk0
256

lspv 命令将这个相同的值显示为 MAX REQUEST,如下面的清单 1 所示。

清单 1. lspv 命令
# lspv hdisk0
PHYSICAL VOLUME: 	hdisk0 			VOLUME GROUP: 	rootvg
PV IDENTIFIER: 000bc6fdbff92812   VG IDENTIFIER 000bc6fd00004c00000000fda469279d
PV STATE: 		active
STALE PARTITIONS: 	0 			ALLOCATABLE: yes
PP SIZE: 		16 megabyte(s) 		LOGICAL VOLUMES: 9
TOTAL PPs: 		542 (8672 megabytes) 	VG DESCRIPTORS: 2
FREE PPs: 		431 (6896 megabytes) 	HOT SPARE: no
USED PPs: 		111 (1776 megabytes) 	MAX REQUEST: 256 kilobytes
FREE DISTRIBUTION:      108..76..30..108..109
USED DISTRIBUTION:      01..32..78..00..00

通过 lsvg 命令,可以列举正在使用的 LTG 的值,如下面的清单 2 所示。

清单 2. lsvg 命令
# lsvg rootvg
VOLUME GROUP:	        rootvg 	        VG IDENTIFIER: 
                                            000bc6fd00004c00000000fda469279d
VG STATE:               active 	        PP SIZE: 16 megabyte(s)
VG PERMISSION: 	        read/write 	TOTAL PPs: 542 (8672 megabytes)
MAX Lvs: 		256 		FREE PPs: 431 (6896 Megabytes)
LVs: 			9 		USED PPs: 111 (1776 megabytes)
OPEN LVs: 		8 		QUORUM: 2
TOTAL PVs: 		1 		VG DESCRIPTORS: 2
STALE PVs: 		0 		STALE PPs: 0
ACTIVE PVs: 		1 		AUTO ON: yes
MAX PPs per VG: 	32512
MAX PPs per PV: 	1016 		MAX PVs: 32
LTG size (Dynamic): 	256 kilobyte(s) AUTO SYNC: no
HOT SPARE: 		no 		BB POLICY: relocatable

请注意,在 lsvg 命令的输出结果中,将 AIX 5L Version 5.3 中创建的 VG 的 LTG 大小显示为 Dynamic,如上面的清单 2 所示。

缺省情况下,AIX 5L Version 5.3 将创建具有可变 LTG 大小的 VG。如果您需要将其导入到以前的 AIX 发行版,您首先需要通过 mkvgchvg-I 选项禁用可变 LTG,然后依次使用 varyoffvgexportvg 命令,否则对以前的发行版执行的 importvg 命令将会失败。

Geographic Logical Volume Manager (GLVM)

它扩展了 LVM 的镜像功能并支持使用 TCP/IP 网络连接的远程 AIX 系统中的逻辑卷。应用程序数据完整的副本可以在远程系统上快速地、轻松地重新联机。

mirscan 命令

这个命令用来搜索和修正无效的或无法执行 I/O 操作的物理分区。它在下列情况下非常有用:

  1. 基础存储上的物理分区无法执行 I/O 操作,但很长时间内并没有对该物理分区进行 I/O 操作。客户需要一种监测和修正这种情况的方法。
  2. 将要更换一块磁盘。客户需要确保不会从系统中删除最近的有效数据副本。

单根卷组 (root volume group) 上 AIX 的多个实例 (multibos)。

该特性允许用户在正在运行的 rootvg 中创建一个新的 AIX 基本操作系统 (BOS) 实例。建立于正在运行的 rootvg 上的这个新的实例,包含了私有的和共享的数据。备用磁盘安装中也提供了类似的特性。尽管有些相似之处,但多个基本操作系统在下列一些非常重要的方面存在着区别:

  • 新的实例构建于正在运行的根卷组(类似于 alt_disk_install 克隆操作)。
  • 新的实例位于当前的根卷组(例如,相同的磁盘)中。
  • rootvg 中的某些数据可以在实例之间进行共享。

在 2006 年 8 月发布的 5300-05 Technology Level 中,已对此特性的健壮性和用户友好性进行了加强。通过脚本控制增强了设置、自定义和验证操作。改善了安全硬连接和文件系统存根许可。

回滚功能(仅对 JFS2 文件系统可用)

将整个文件系统恢复到一个有效的指定时间点的快照(目标快照)。回滚操作尝试恢复目标快照时刻的快照。该目标快照之后进行的快照将丢失。

JFS2 的磁盘配额支持

通过实现磁盘使用配额来控制永久存储的使用,AIX 5L Version 5.3 扩展了 JFS2 的功能。

可以基于每个文件系统为单独的用户和组设置磁盘配额。

版本 5.3 还引入了限制类的概念。它允许对每个文件系统限制进行配置,提供了删除旧的或失效的配额记录的方法,并通过专用的 SMIT 面板提供了全面的支持。它还提供了一种方法来定义一组磁盘块和文件分配的硬、软限制,以及软限制强制实施为硬限制前的过渡期。

同一系统中可以同时使用 JFS2 和 JFS 的配额支持。

缩小文件系统

AIX 5L Version 5.3 支持动态地缩小 JFS2 文件系统。当文件系统的大小减少时,该文件系统所处的 LV 的大小也会减少。

JFS2 logredo 的可扩展性

AIX 5L Version 5.3 在 logredo 方面提供了下列增强,以改进性能并支持大量的文件系统:

  • 支持卷组中的次要编号大于 512
  • 支持写时拷贝和缓存式更新,以减少 I/O 活动
  • 支持缩小文件系统

在 5300-05 Technology Level(2006 年 8 月发布)中,JFS2 的性能得到了进一步增强。我们的目标是改善处于停顿状态的文件系统的重启时间以及正常的重启。

访问时间 (atime) 更新

JFS 异步提交 atime 更新 updates。在 5300-05 Technology Level(于 2006 年 8 月发布)之前,JFS2 按照与其他提交相同的方式对待它们。已对 JFS2 进行修改,使其工作方式与 JFS 相同。这减少了对日志进行 I/O 操作的数量。

JFS2 文件系统检查灵活性

AIX 5L Version 5.3 增强了 Helper 的实现,它专门为 JFS2 文件系统执行文件系统检查。新的代码更好地利用了系统资源,并且包括了提高可扩展性和性能的算法。

针对 NFS V4 的 JFS2 ACL 支持

从 AIX 5L Version 5.3 开始,Enhanced Journaled File System 支持 NFS version 4 的 ACL。这样使得您可以为文件系统对象建立细粒度的访问控制,并且支持继承特性。


结束语

AIX 5L Version 5.3 中具有许多本文中尚未介绍的特性。我希望本文已经很好地向您介绍了您将在最新版 AIX 中获得的某些增强特性。有关这些增强的详细描述,请访问参考资料部分中列出的 Web 站点。

参考资料

学习

获得产品和技术

  • IBM 试用软件:使用 IBM 软件开发您的下一个项目,可直接从 developerWorks 下载这些试用软件。

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=AIX and UNIX
ArticleID=183936
ArticleTitle=AIX 5L V5.3 中的存储管理
publish-date=12142006