该主题帮助您了解如何使用分区负载管理器来查询分区状态。
任何用户都可以运行 xlplm 命令来获取分区负载管理器的运行实例的状态信息。
查询分区负载管理器的状态
xlplm -Q将显示正在运行的实例的列表。如果没有实例在运行,则不会显示输出。
查询实例的属性
xlplm -Q test1此命令的输出将类似于以下内容:
PLM Instance: test1
GROUP: group1
CUR MAX AVAIL RESVD MNGD
CPU: 6.00 4.00 0.00 0.00 Yes
MEM: 8192 8192 0 0 Yes
thimblelp10.server.company.com
RESOURCES:
CUR MIN GUAR MAX SHR
CPU: 3.00 1.00 3.00 3.00 1
MEM: 4096 1024 4096 4096 1
thimblelp11.server.company.com
RESOURCES:
CUR MIN GUAR MAX SHR
CPU: 3.00 1.00 3.00 3.00 1
MEM: 4096 1024 4096 4096 1
查看来自查询的其他信息
xlplm -v -Q test1此命令的冗余输出将类似于以下内容:
PLM Instance: test1
CEC Name Thimble
Mode monitor
Policy /etc/plm/policies/policy1
Log /tmp/log.test
HMC Host kbuphsc2.server.company.com
HMC User hscroot
GROUP: group1
CUR MAX AVAIL RESVD MNGD
CPU: 6.00 4.00 0.00 0.00 Yes
MEM: 8192 8192 0 0 Yes
CPU TYPE: dedicated
thimblelp10.server.company.com
RESOURCES:
CUR MIN GUAR MAX SHR
CPU: 3.00 1.00 3.00 3.00 1
MEM: 4096 1024 4096 4096 1
TUNABLES:
INTVL FRUNSD LOADLO LOADHI DELTA PGSTL
CPU: 6 0 0.40 1.00 1.00 -
MEM: 6 0 50% 90% 256 0\
thimblelp11.server.company.com
RESOURCES:
CUR MIN GUAR MAX SHR
CPU: 3.00 1.00 3.00 3.00 1
MEM: 4096 1024 4096 4096 1
TUNABLES:
INTVL FRUNSD LOADLO LOADHI DELTA PGSTL
CPU: 6 0 0.40 1.00 1.00 -
MEM: 6 0 50% 90% 256 0
*****************************************************************************
将资源分配至分区
您可以将资源分配至特定分区,甚至为特定分区保留资源,而不管这些分区何时使用这些资源。您可使用 xlplm -R 命令保留和分配一组受管分区的资源。保留的那些资源可以用来创建新的非受管分区或腾出空间以便使新的分区进入受管组。
除非首先释放保留的资源,否则不会将保留的资源分配至组中任何现有分区。如果先前脱机的分区重新联机并进入受管组,则将从保留的资源集合(称为空闲池)中自动除去该组内的任何保留资源并将它们分配至新的分区。如果改为使用保留的资源来创建新的非受管分区,则在新分区引导之后,可以将这些资源释放到组中,并且如果它们稍后变为可用且被需要,可以由受管组自动回收。
请求的保留数量是确定的,因此根据当前的保留数量的不同,保留命令可能导致保留或释放。保留数量中允许的最小更改如下:
当保留资源时,将首先检查目标组的空闲池是否有可用资源。如果空闲池有足够的资源来满足请求,则将从空闲池取出请求的量。如果空闲池没有足够的资源来满足请求,则将从工作负载最低或资源要求最小的一个或多个分区获取资源。如果请求的量大于组所允许的最小值,则保留请求将失败。
管理内存资源请求
以下是一个如何使用分区负载管理器来管理内存资源请求的示例。此示例显示分区负载管理器如何响应两个分区之间的内存资源请求:
LP0: 最小值 = 1024 MB
保证值 = 1024 MB
最大值 = 4096 MB
权重 = 2
当前使用量 = 1024 MB
LP1: 最小值 = 1024 MB
保证值 = 1024 MB
最大值 = 4096 MB
当前使用量 = 1024 MB
权重 = 1
由分区负载管理器管理的内存总量是 5120 MB。根据每个分区的当前内存分配(显示为当前使用量 = 1024 MB),分区负载管理器假定剩下的 3072 MB 是未分配且可用的。
LP0: 当前使用量 = 2560 MB LP1: 当前使用量 = 2560 MB
即使在当前的分配状况下,分区也会继续生成要求更多内存资源的事件。
对于每个事件,因为分区分配了比显示的保证使用量更多的资源,所以分区负载管理器继续将分区标识为接受者和过度用户。但是,因为没有可用资源,所以如果没有其他资源提供者或任何其他过度用户,则会将该请求排队。当接收到来自第二个分区的请求时,也会将该分区标记为接受者和过度用户。因为已经将一个过度用户排队,所以分区负载管理器可以满足资源请求。
因为 LP0 和 LP1 都是接受者和过度用户,所以分区负载管理器使用与每个分区相关的权重作为因子来确定如何在两个分区之间分配超额使用量(每个分区的当前使用量总和减去每个分区的保证分配量的总和)。
在此示例中,具有额外容量 3072 MB,LP0 分区应分配 2048 MB,LP1 分区应分配 1024 MB。分区负载管理器将 mem_incrememt MB 内存从 LP1 分区指定至 LP0 分区。
LP0: 当前使用量 = 3072 MB LP1: 当前使用量 = 2048 MB
在共享分区环境中管理处理器资源
LP0: 最小值 = 0.1
保证值 = 0.5
最大值 = 2.0
每个虚拟处理器的最大使用量 = 0.8
权重 = 3
当前使用量 = 0.1
当前虚拟处理器数目 = 1
LP1: 最小值 = 0.1
保证值 = 0.5
最大值 = 2.0
每个虚拟处理器的最大使用量 = 0.8
权重 = 1
当前使用量 = 0.1
当前虚拟处理器数目 = 1
由分区负载管理器管理的处理器使用量总量是 2.0。当前分配至每个分区的数量为 0.1,这使得分区负载管理器可以分配的未分配处理器使用量为 1.8。
如果两个分区都开始运行大量使用处理器的作业,则它们通过对分区负载管理器发送请求来请求更多的处理器使用量。如果有要求的分区的当前使用量大于其保证值,则分区负载管理器将这些分区标识为接受者和过度用户。
除了管理处理器使用量以外,分区负载管理器还管理虚拟处理器的数目。当分区的当前使用量超过 0.8 时,也会添加一个虚拟处理器。
LP0: 当前使用量 = 1.0
当前虚拟处理器数目 = 2
LP1: 当前使用量 = 1.0
当前虚拟处理器数目 = 2
LP0: 当前使用量 = 1.25
当前虚拟处理器数目 = 2
LP1: 当前使用量 = 0.75
当前虚拟处理器数目 = 2