在 IBM 集成虚拟化管理器上进行 Linux 分区的 DLPAR 操作,第 1 部分

来源:developerWorks 中国 作者:沈 林峰
  
动态逻辑分区(DLPAR)是 IBM System p 服务器上的一种虚拟化特性,该特性允许用户在分区运行的时候动态调整分区的资源分配,使得系统资源得到更为有效的利用,并且不影响应用或者服务的正常运行。集成虚拟化管理器(IVM)是一种与HMC类似的用于管理 System p 服务器的平台,也同样支持 DLPAR,不过与 HMC 上的 DLPAR 存在不少差异。本系列文章介绍 IVM 上 Linux 逻辑分区的 DLPAR,分成四个部分。本文是第一部分,介绍了 IVM 和 Linux 对 DLPAR 的支持情况、Linux 分区上 DLPAR 环境的准备过程、以及 IVM 上 Linux 分区 DLPAR 的基本过程等背景知识。

IBM System p服务器从POWER5开始支持动态逻辑分区(Dynamic Logical Partitioning,简称DLPAR)虚拟特性,该特性允许用户在分区运行的时候动态调整分区的资源分配,这种调整在分区运行的时候随即生效,不需要重启操作系统。这使得用户可以根据工作负载来动态调整系统的资源分配,使得资源得到最有效的使用,并且不影响客户的应用或服务的不间断运行。除了System p平台的硬件和固件外,DLPAR还需要分区操作系统的支持。Linux是一种开放源码的操作系统,以其开放性、稳定性和高效性等特点得到越来越多用户的青睐。它支持多种硬件平台,能够运行在System p服务器上并提供DLPAR功能,这使得System p上的Linux用户可以利用DLPAR这一重要的虚拟化特性来优化业务的运行。

HMC(Hardware Management Console)是用户熟知的System p服务器管理平台,它提供了简单有效的DLPAR操作界面,包括图形界面和命令行界面两种方式,用户可以通过该界面对Linux分区进行处理器、内存和适配器DLPAR等操作。IVM(Integrated Virtualization Manager)- 集成虚拟化管理器是System p上的类似于HMC的另外一种管理平台,在设计和操作方式上与HMC存在较大差别。那么IVM是否也支持Linux分区的DLPAR操作,IVM上Linux分区DLPAR的基本执行过程究竟是怎样的,用户如何通过IVM进行DLPAR操作,IVM和HMC上的DLPAR又有哪些不同呢?本系列文章将逐一解答这些问题。

本系列文章介绍了IVM上Linux逻辑分区的DLPAR操作,分成四个部分:第一部分介绍了IVM对DLPAR功能支持的变化过程、主流的Linux发行版本对DLPAR的支持情况、Linux分区上DLPAR环境的准备过程、以及IVM上Linux分区DLPAR的基本过程等背景知识;第二部分介绍了处理器和内存的DLPAR操作;第三部分介绍了虚拟适配器和物理适配器的DLPAR操作,并比较了IVM和HMC上DLPAR的联系和区别;第四部分介绍了虚拟磁盘和光学设备的动态调整,这种动态调整虽然不是真正意义上的DLPAR,但是可以起到相同的效果,使得用户能够方便的动态调整这些资源。为了更加直观有效的讲解IVM上Linux分区的DLPAR操作过程,使读者能够更好的理解和掌握这些内容,本系列文章使用实例贯串全文。本文是本系列文章的第一部分。

虽然本系列文章所面向的读者是System p上的Linux用户,但是由于AIX和Linux上的DLPAR在原理和操作方面都非常类似,因此AIX用户也可以从中获益。为了更好的阅读本系列文章,要求读者对IVM的基本原理和操作界面有初步的认识,了解DLPAR的基本原理,并熟悉HMC上的DLPAR操作和Linux的使用。读者可以通过阅读本文所提供的参考资料1、2、3和4了解或熟悉这些方面的相关知识。如果读者有IVM、DLPAR和Linux方面的配置和使用经验,则能更好的理解和掌握本系列文章所描述的内容。

IVM和Linux对DLPAR的支持

IVM简介

在IBM System p上,IVM是与HMC类似的另外一种服务器管理方式,同样可以进行AIX或者Linux分区的创建、编辑和删除,分区状态的控制,虚拟网络和存储的创建、分配和删除,DLPAR,动态分区迁移(Live Partition Mobility)等操作,同样提供了图形操作界面(基于Web的UI)和命令行操作界面。

既然有了HMC这种通用的System p服务器管理方式,为什么还要提供IVM呢?首先,虽然HMC被设计成能够有效管理各种System p机型的管理方案,但是却使得该方案显得比较复杂和过剩,对于某些简单的应用(比如用户仅购买了一个低端的System p机器,并且只需要对它进行简单的分区划分和使用,而不需要HMC所提供的管理多台服务器的功能或者多台HMC管理同一服务器的冗余功能等)而言,一个能够实现快速部署和降低学习代价的管理方案更适合用户的需求。其次,HMC是独立于System p服务器之外的一台机器,用户需要单独付费购买,对于购买低端服务器的用户来说,HMC的价格还是占了相当大的比重,因此在这种情况下该管理方案并不能给用户带来很好性价比。最后,HMC不能管理刀片服务器,如果需要对刀片服务器进行分区划分和管理,那么HMC就无能为力了。

为了解决上述HMC的缺点,IBM提供了IVM这种简化的管理方式(如图1所示),可以说,IVM是一个简化版的HMC。为了支持分区管理,VIOS(Virutal I/O Server)不仅能够为其它分区提供虚拟资源,还增加了IVM这个功能部件。由此可见,IVM不是独立的,而只是VIOS的一个组成部分。在IVM管理下,整台服务器被划分成几个分区,包括一个VIOS和其它几个分区(称为客户分区)。基于Web的UI(图1中Web Browser部分)是由IVM中的“Web Server”部件提供的,用户通过浏览器连接到VIOS就可以使用该界面了;用户还可以使用telnet或者ssh(图1中Telnet/SSH部分)登陆到VIOS,通过VIOS提供的“Command Shell”来使用命令行界面。用户通过图形或者命令行界面发出操作指令后,IVM或VIOS根据操作的类型进行命令分发。如果是跟虚拟资源管理相关的操作(比如创建或分配虚拟磁盘等),那么就由VIOS提供的“VIOS CLI”进行处理;如果是跟分区管理相关的操作(比如创建或删除分区),则由IVM提供的“LPAR CLI”进行处理。IVM通过VMC(Virtual Management Channel)这个虚拟设备与POWER Hypervisor进行通信,对分区进行管理或控制。由于VMC只能与它所在的服务器上的Hypervisor进行通信,因此每个IVM只能管理一台服务器。同时,由于IVM的市场定位和功能的局限性,通常它只用于中低端服务器,而高端服务器仍然由HMC进行管理。


图1:集成虚拟化管理器
集成虚拟化管理器

IVM功能的变化

IVM作为VIOS上类似于HMC的一个部件,其功能随着开发过程的进行在不同的VIOS版本中不断得到增强。图2显示了这一变化过程,图中主要列出了跟DLPAR相关的一些变化。

VIOS对IVM功能的支持并非与生俱来的,而是从版本1.2才开始的。这时候的IVM主要关注一些基本的分区管理功能,如分区的创建和删除,分区定义的修改和状态的控制,虚拟网络和虚拟存储的创建、分配和删除等,但是不支持DLPAR和客户分区端的物理适配器(Physical Adapter)等功能。

从版本1.3.0.0开始,IVM开始支持处理器和内存等资源的DLPAR。不过在该版本之前,IVM已经支持VIOS上资源的动态调整,从而支持分区的创建、修改和删除等操作,比如在创建分区的时候,IVM需要在VIOS上为该分区创建相应的虚拟SCSI服务器端适配器(Virtual SCSI Server Adapter),如果IVM不支持VIOS上资源的动态调整的话,那么就没办法在VIOS运行的时候使新的分区配置马上生效(由于VIOS在IVM这种管理方式下的特殊性,如果没有特别指定,本系列文章所讨论的内容都是针对客户分区而言的)。IVM对处理器和内存的DLPAR和适配器的DLPAR在实现机制上存在较大差别,对后者的支持并没有包含在版本1.3.0.0中,而是到版本1.5之后才开始支持的。至此,IVM支持对所有分区(包括VIOS、AIX客户分区和Linux客户分区)上各种资源(处理器、内存和适配器等)的DLPAR操作。

IVM对客户分区物理适配器的支持是从版本1.5开始的,与适配器DLPAR的支持同步出现。在此之前,IVM只支持虚拟适配器 - 虚拟网卡和虚拟SCSI等,虚拟资源的使用提高了系统资源的利用率,但是却降低了分区的性能。对物理适配器的支持使得系统管理员能够在系统资源相对充足的情况下将物理适配器和磁盘等直接分配给分区来使用,从而提高分区的性能,同时满足不同客户对系统配置的不同需求。


图2:IVM 功能的逐步增强
IVM 功能的逐步增强

Linux对DLPAR的支持

在IBM System p上,DLPAR的类型有处理器DLPAR、内存DLPAR和适配器DLPAR等。与AIX类似,Linux也支持DLPAR,但是不同的Linux发行版本对DLPAR的支持情况不尽相同。图3列举了两个主流的Linux产商Redhat和Novell/SuSE所发行的Linux企业版本RHEL(Red Hat Enterprise Linux)和SLES(SUSE LINUX Enterprise Server)中的若干版本对DLPAR的支持情况:RHEL4/5和SLES9/10均支持处理器和适配器的增加、减少和移动等DLPAR操作;而对内存DLPAR的支持是逐步增强的,RHEL4和SLES9不支持任何类型的内存DLPAR,RHEL5和SLES10开始支持内存的动态增加,但是不支持内存的动态减少和移动,这两种内存DLPAR操作有望在将来的版本中得到支持。


图3:RHEL 和 SLES 对 DLPAR 的支持
RHEL 和 SLES 对 DLPAR 的支持




Linux分区DLPAR环境的准备

通过上面一节的讨论,我们已经知道了IVM上的Linux分区支持DLPAR操作。要使用DLPAR,首先必须准备DLPAR所需的环境。在IVM上准备Linux分区的DLPAR环境需要经过以下几个步骤:

  1. 在选配了APV(Advanced Power Virtualization)特性的System p机器上安装和配置IVM,包括虚拟网络和磁盘存储等资源的配置
  2. 定义Linux分区
  3. 激活Linux分区,安装Linux操作系统
  4. 在Linux上安装DLPAR所需的工具包
  5. 确认Linux分区的DLPAR能力

因为本系列文章所讨论的是DLPAR,并假设读者对IVM和Linux有一定的了解和使用经验,因此就不再具体讨论IVM和Linux的安装和配置了(步骤1和3)。如果读者需要了解这方面的相关知识,请翻阅参考资料IBM红皮书《Integrated Virtualization Manager on IBM System p5》(参考资料1),以及Redhat或Novell官方网站上提供的相关文档(参考资料2和3)。

定义Linux分区

本系列文章将以实际的例子来讲解如何在IVM上进行Linux分区的DLPAR操作。IVM被安装在一个基于POWER6的IBM JS22刀片服务器上,该系统包含3个分区:uli14是分区标识为1的VIOS,版本为1.5.1.1-FP-10.1;而uli13lp1和uli13lp2是两个Linux客户分区,标识分别是2和3(如图4所示),其中uli13lp2是本系列文章所使用的实验系统,安装了SLES10 Service Pack 2。在本系列文章中,我们将基于该实验系统以实例来详细讲解IVM上Linux分区各种资源的DLPAR操作。


图4:IVM 所管理的分区
IVM 所管理的分区

分区uli13lp2使用的是共享处理器模式,处理单元数的最小值、已分配值和最大值分别是0.1、0.2和0.4,而虚拟处理器数的最小值、已分配值和最大值分别是1、2和4(如图5所示:uli13lp2分区属性页面中的“处理”标签)。最小和最大值的不同为DLPAR操作提供了可能,整个系统剩余1.5个处理器单元(如图4所示)可供处理器DLPAR使用。


图5:uli13lp2 的处理器配置
uli13lp2 的处理器配置

分区uli13lp2已分配的内存为1GB,而分区定义中内存的最小和最大值分别为128MB和1GB+256MB(如图6所示:uli13lp2分区属性页面中的“内存”标签)。从图中还可以看到,该系统的逻辑内存块(Logical Memory Block)的大小被设置成32MB,用户必须以该大小的整数倍为步长对内存进行DLPAR。整个系统仍然剩余608MB内存(如图4所示)供DLPAR使用。


图6:uli13lp2 的内存配置
uli13lp2 的内存配置

分区uli13lp2使用了一个虚拟以太网适配器(如图7所示的适配器1:uli13lp2分区属性页面中的“以太网”标签),网卡被连接到VLAN(虚拟以太网)1,该VLAN通过VIOS上插槽U78A5.001.WIH1106-P1-T7中的物理网卡连接到外部网络,与其它系统进行通信。该分区还有一个空闲的虚拟以太网适配器(适配器2)可以增加,如果用户需要更多的虚拟网卡,可以点击“创建适配器”按钮进行添加。


图7:uli13lp2 的虚拟以太网适配器
uli13lp2 的虚拟以太网适配器

分区uli13lp2还占用了一个虚拟磁盘,该磁盘是由逻辑卷组rootvg中的逻辑卷clientlv01提供的,大小为1.5GB,作为该分区的系统盘(如图8所示:uli13lp2分区属性页面中的“存储”标签)。整个系统还剩余一个虚拟磁盘可以使用,即rootvg中大小为256MB的逻辑卷clientlv02,用户可以把该磁盘分配给需要它的分区来使用。


图8:uli13lp2 的虚拟磁盘
uli13lp2 的虚拟磁盘

由于本系列文章的例子中所使用的VIOS版本为1.5.1.1-FP-10.1,因此IVM支持物理适配器的分配。IVM在分区属性页面中增加了“物理适配器”标签(如图9所示),用户可以通过该页面来查看和修改逻辑分区上物理适配器的分配。从图9可以看出,当前分区uli13lp2不占用任何物理适配器,整个系统中也没有任何空闲的物理适配器可供分区使用。


图9:uli13lp2 的物理适配器
XML error: The image is not displayed because the width is greater than the maximum of 572 pixels. Please decrease the image width.

安装DLPAR工具包

要使DLPAR正常工作,必须安装IBM所提供的DLPAR工具包(见参考资料5)。工具包中所提供的工具或守护进程如RMC(Resource Monitoring and Control)负责与IVM进行通信,协同进行DLPAR操作,并执行客户分区端的资源动态调整等操作。关于如何在Linux上安装DLPAR工具包,请翻阅参考资料4中“安装Linux对动态LPAR的支持”一节,或者参考资料5中所提供的说明,这里不再赘述。

清单1中所列的是uli13lp2上安装的DLPAR工具包,“Package Name”列显示的是工具包的名称,“Installed”列显示的是安装上的工具包的版本,而“In Repository”列则是当前最新的工具包版本。由于工具包一直处于开发更新之中,而且不同的Linux版本所需要安装的包也不尽相同,因此这里所显示的信息与参考资料4中表1所列举的或者读者在其它地方看到的工具包的名称或版本可能存在一些差异。


清单1:uli13lp2上安装的DLPAR工具包
Operating System:     Novell/SuSE
Version:             10
HMC/IVM Managed?   yes

Package Name                   Installed            In Repository
------------                   ----------           -------------
librtas                         1.3.4-0              1.3.4-0
libvpd                          1.4.1-1              1.4.1-1
lsvpd                           1.4.0-1              1.4.0-1
powerpc-utils                  1.0.6-0              1.0.6-0
powerpc-utils-papr            1.1.1.8-0            1.1.1.8-0
servicelog                     0.2.9-0              0.2.9-0
diagela                         2.2.3-0              2.2.3-0
sysdiag                         0.2.2-0              0.2.2-0
IBMinvscout                    2.2-5                 2.2-5
rdist                           6.1.5-792.1          6.1.5-792.1
src                              1.3.0.2-07305       1.3.0.2-07305
rsct.core.utils               2.5.0.1-07305        2.5.0.1-07305
rsct.core                       2.5.0.1-07305       2.5.0.1-07305
csm.core                        1.7.0.1-57           1.7.0.1-57
csm.client                      1.7.0.1-57          1.7.0.1-57
devices.chrp.base.ServiceRM  2.2.0.0-6           2.2.0.0-6
DynamicRM                       1.3.4-0              1.3.4-0
ibm-lop-utils                  0.1.2-2              0.1.2-2

确认DLPAR能力

即使安装了DLPAR工具包后也不意味着DLPAR就能够顺利进行,因为DLPAR还依赖于IVM和Linux系统以及各种相关进程的正常运行。比如可能某些守护进程在运行时意外退出,导致IVM和Linux分区不能正常通信;再如分区可能在安装完工具包后的某个时候被关闭了,这时候DLPAR也不能正常运行。IVM上有几种查看和确认Linux分区DLPAR能力(DLPAR Capability)的方法,分为图形界面方式和命令行方式。

图形界面查看方式

在分区的属性页面中,IVM为DLPAR提供了相应的属性区域 - “动态逻辑分区(DLPAR)”(如图10所示),包括以下5个域:

  • 分区主机名或IP地址
  • 分区的RMC通信状态,包括“不活动”和“活动”等状态
  • 内存DLPAR功能是否打开,包括“否”,“未知”和“是”等状态
  • 处理器DLPAR功能是否打开,可能的状态与内存DLPAR相同
  • I/O适配器DLPAR功能是否打开,可能的状态也与内存DLPAR相同

图10显示了安装DLPAR工具包之前uli13lp2的DLPAR能力属性。分区主机名或IP地址域显示了uli13lp2的IP地址;因为此时RMC守护进程还未运行,因此分区通信状态为不活动状态;而各种资源的DLPAR能力就像预期的那样,处于未激活的状态。


图10:安装工具包前 uli13lp2 的 DLPAR 能力属性
安装工具包前 uli13lp2 的 DLPAR 能力属性

在成功安装完工具包并等候RMC与IVM建立握手后,再次打开分区属性页面,用户可以看到如图11所示的DLPAR能力。可以看到,分区通信状态已经处于活动状态,但是由于打开该属性页面的时候 IVM 并没有扫描分析该分区的DLPAR能力,因此各种资源的DLPAR能力处于一个未知的状态。

IVM 提供了“检索功能”按钮,用户可以通过该按钮通知 IVM 扫描、分析并提取当前分区的 DLPAR 能力。按下该按钮后,用户需要等待一段时间,之后IVM完成扫描和分析,显示出分区的 DLPAR 能力。在本文的例子中,DLPAR 所需的环境已经准备妥当,因此各种资源的 DLPAR 能力均处于激活状态(如图12所示)。


图11:安装工具包后 uli13lp2 的 DLPAR 能力属性
安装工具包后 uli13lp2 的 DLPAR 能力属性

图12:点击“检索功能”后 uli13lp2 的 DLPAR 能力属性
点击“检索功能”后 uli13lp2 的 DLPAR 能力属性

需要注意的是,即使在 DLPAR 正确设置的情况下,分区也并非能够对各种类型的资源做 DLPAR 操作,因为这还要取决于分区上所安装的 Linux 操作系统对 DLPAR 的支持情况(如图3所示)。以 RHEL4 为例,假设分区所安装的操作系统是 RHEL4,在安装工具包前,内存 DLPAR 能力的状态是“否”;在安装完工具包后,该状态变成“未知”;而在扫描完成后,该状态变成预期中的“否”,表明 RHEL4 并不支持内存 DLPAR。在本文例子中,由于我们安装的是 SLES10 Service Pack 2,因此处理器和适配器的 DLPAR 能力的状态都是“是”,虽然不支持内存的动态减少操作,但是由于增加操作是允许的,因此内存的 DLPAR 能力的状态也是“是”。

命令行查看方式

从图1可以看到,IVM中图形界面的操作最终还是被分发到命令行中去执行。那么 IVM 和 Linux 究竟提供了什么命令行方式去查看分区的 DLPAR 能力,而图形界面的操作又是对应到哪种命令行方式呢?清单2和4显示了两种方式,分别在 VIOS 和 Linux 分区上执行:

  • 命令 lssyscfg 是 IVM 上查看分区 DLPAR 能力的通用方式,不论客户分区处于什么样的状态,该方式都能正常使用。dlpar_proc_capable、dlpar_mem_capable 和 dlpar_io_capable 分别表示处理器、内存和适配器的 DLPAR 能力,输出值1表明该资源类型的 DLPAR 处于激活状态,否则表示不支持或未激活。该方式是图形方式的后端,用户可以通过对比IVM 进行分区DLPAR能力扫描操作前后应用程序日志的变化得到这一结论。清单3显示了 HMC上相应的查看方式即命令 lspartition,DCaps 域表示了分区的 DLPAR 能力,输出值的具体含义在这里就不介绍了。通过对比可以看到,lssyscfg 仅适用于IVM,而 lspartition 仅适用于 HMC。
  • Linux分区上的drmgr方式则要看该命令是否支持--capabilities选项,并且只能在分区系统正常运行的情况下才能使用。在本文例子所用的SLES10 SP2中,命令drmgr由DLPAR工具包中的powerpc-utils-papr提供,该RPM包从版本1.1.1.6-0开始支持--capabilities选项,即支持该查看方式。该方式的优点是:不论Linux分区是由IVM还是HMC来管理,这种查看方式都适用。清单5显示了在HMC管理下的RHEL5 U2分区上使用该方式的一个结果。

清单2:在 IVM 的 VIOS 上用 lssyscfg 来查看
$ lssyscfg -r lpar --filter lpar_names=uli13lp2  \
-F dlpar_proc_capable,dlpar_mem_capable,dlpar_io_capable
1,1,1
$ lspartition -dlpar
rksh: lspartition:  not found.
$


清单3:在 HMC 上用 lspartition 来查看
hscroot@sqh11lte:~> lssyscfg -m fsp-venus -r lpar --filter lpar_names=venuslp3  \
-F dlpar_proc_capable,dlpar_mem_capable,dlpar_io_capable
An invalid attribute was entered.  The invalid attribute is dlpar_proc_capable. 
 Please correct your entry and retry the command.
hscroot@sqh11lte:~> lspartition -dlpar | grep -A 1 venuslp3
<#15> Partition:<3*9119-595*02569EC, venuslp3.upt.austin.ibm.com, 9.3.111.206>
       Active:<1>, OS:<Linux, 2.6.18-92.el5>, DCaps:<0x7f>,  \
       CmdCaps:<0x9, 0x9>, PinnedMem:<0>
hscroot@sqh11lte:~>


清单4:在 IVM 的 Linux 分区上用 drmgr 来查看
uli13lp2:~ # rpm -qf `which drmgr`
powerpc-utils-papr-1.1.1.8-0
uli13lp2:~ # drmgr --capabilities
cpu_dlpar=yes,mem_dlpar=yes,slot_dlpar=yes,phb_dlpar=yes,hea_dlpar=yes, \
pmig=yes,cpu_entitlement=yes,mem_entitlement=yes
uli13lp2:~ #


清单5:在 HMC 管理的 Linux 分区上用 drmgr 来查看
[root@venuslp3 ~]# rpm -qf `which drmgr`
powerpc-utils-papr-1.1.1.6-0
[root@venuslp3 ~]# drmgr --capabilities
cpu_dlpar=yes,mem_dlpar=yes,slot_dlpar=yes,phb_dlpar=yes, \
hea_dlpar=yes,pmig=no,cpu_entitlement=yes
[root@venuslp3 ~]#





DLPAR 的基本过程

IVM 从版本 1.3.0.0 开始支持处理器和内存 DLPAR,与 HMC 使用命令 chhwres 不同,此时 IVM 不提供命令 chhwres,而是使用 chsyscfg 进行 DLPAR,但是该命令只能用于处理器和内存 DLPAR,而不能用于适配器 DLPAR。从版本 1.5 开始,IVM 增加了命令 chhwres 用于支持适配器 DLPAR,不仅如此,该命令还可以用于处理器和内存 DLPAR。至此,用户可以使用命令 chsyscfg 或 chhwres 进行处理器和内存 DLPAR,使用 chhwres 进行适配器 DLPAR。那么,处理器和内存 DLPAR 与适配器 DLPAR 分别是如何进行的,它们的基本运作过程之间存在什么差别呢?还有,使用 chsyscfg 和 chhwres 进行处理器和内存 DLPAR 是否存在不同呢?

为了更好的讨论 IVM 上 DLPAR 的基本过程,先来看看分区的profile和属性(Properties)。在HMC上,profile描述了分区期望得到资源,用户可以使用chsyscfg来修改profile;分区属性则描述了分区当前拥有的资源,用户可以使用chhwres来动态调整分区的资源分配;用户对分区profile和属性的修改之间不互相影响,也就是说,profile中资源描述的变化不会马上应用到分区属性,用户需要通过关闭然后重新激活分区的方式来使新的profile生效,分区属性的变化也不会影响profile的资源描述,当分区关闭后,通过DLPAR产生的资源分配的变化不再起作用。但是在HMC上截然不同的两个概念在IVM上却显得不分彼此:首先,IVM仅提供了如图10所示的页面来修改分区的profile和执行DLPAR操作;其次,用于修改分区profile的命令chsyscfg也可用于DLPAR;最后,有IVM上的DLPAR操作经验的读者可能发现,DLPAR产生的资源分配变化在分区关闭后仍旧可以在图10所示的页面中看到。实际上,IVM并不存在分区profile的概念,命令chsyscfg和chhwres都直接修改分区的属性,分区关闭后分区的属性仍然有效,并在下次分区激活时得到应用,这样上述现象就变得很自然了。即便没有profile,IVM还是提供了与之相关的命令(比如lssyscfg等)与HMC保持兼容,以方便用户的使用,同时用户还可能在这些命令的参考手册中看到profile这个词。

图13描述了IVM上DLPAR的基本过程。处理器和内存各存在两个值:暂挂值(Pending)和当前值(Run Time),前者描述了用户期望得到的资源数量,后者表示分区当前占用的资源数量。命令chsyscfg和chhwres只修改暂挂值而不修改当前值,而暂挂值到当前值的应用或同步则是由DLPAR Manager守护进程来执行的,其中包括逻辑分区上处理器和内存的vary on/off操作。既然命令chsyscfg和chhwres是等效的,并且已经有了chsyscfg,命令chhwres为何还要提供相同的处理器和内存DLPAR功能呢?目的是为了与HMC保持兼容,使得用户能够使用相同的命令行在IVM和HMC执行DLPAR操作。适配器则不存在暂挂值的概念,命令chhwres直接修改分区属性中的适配器信息,并在DLPAR能力激活的情况下在逻辑分区上vary on/off适配器,从而实现DLPAR;命令chsyscfg仅修改分区属性中的适配器信息,而不执行vary on/off操作,用户可以在分区上手工执行vary on/off操作来使chsyscfg的修改生效,从而达到DLPAR相同的效果。由于适配器DLPAR不依赖于DLPAR Manager,因此如果这个过程中产生错误,用户可以马上看到错误信息;而处理器和内存DLPAR中,资源动态调整的错误只能在DLPAR Manager执行同步操作时才能发现并报告给用户。


图13:IVM 上 DLPAR 的基本过程
IVM 上 DLPAR 的基本过程

图14描述了基于DLPAR Manager的处理器和内存DLPAR更加详细的执行过程。命令chsyscfg和chhwres完成暂挂值的修改后唤醒阻塞中的DLPAR Manager,然后命令结束;DLPAR Manager被唤醒后执行暂挂值到当前值的同步,同步完成后该守护进程重新阻塞直到下一次被唤醒。DLPAR Manager的执行过程如图14右部所示,从该过程中我们可以看到同步所依赖的条件。首先,如果某个分区属于工作负载组(Partition Workload Group),并且该组包含多于1个逻辑分区,那么 DLPAR Manager 不同步该分区,而是由工作负载组的管理软件自行处理。其次,分区应该处于运行状态,否则,DLPAR Manager 仅把当前值修改成暂挂值,而不执行 vary on/off 操作。还有,分区的 RMC 连接应该处于活跃状态,这样IVM才能与之协作完成资源的动态调整。最后,资源的暂挂值和当前值应该处于不一致的状态。当这些条件满足后,DLPAR Manager 就修改当前值为暂挂值,并协同分区的 RMC 守护进程等进行资源的 vary on/off 操作(当然,前提是分区支持该资源的动态调整)。至此,一个完整的处理器和内存 DLPAR 过程就完成了。


图14:基于 DLPAR Manager 的处理器和内存 DLPAR
基于 DLPAR Manager 的处理器和内存 DLPAR




小结

本系列文章介绍了IBM集成虚拟化管理器 — IVM 上 Linux 逻辑分区的 DLPAR,本文是其中的第一部分,介绍了 IVM 对 DLPAR 功能支持的变化过程、主流的 Linux 发行版本对 DLPAR 的支持情况、Linux 分区上 DLPAR 环境的准备过程、以及 IVM上 Linux 分区 DLPAR 的基本过程等背景知识。由于篇幅的限制,本文没有涉及处理器、内存、适配器、虚拟磁盘和光学设备等各种资源的 DLPAR 操作过程,这些内容将在本系列文章的后续篇章中分别介绍。(责任编辑:A6)


时间:2009-02-13 14:54 来源:developerWorks 中国 作者:沈 林峰 原文链接

好文,顶一下
(2)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量