我们知道虚拟化作为一项成熟的技术,在 IBM eServer pSeries 服务器和 BladeCenter JS 刀片服务器中已经得到广泛的应用。所以我们有必要简单说明用户在常见的虚拟化环境,AIX微分区 (Micro Partition) 中如何得到可用的资源状态。
AIX 的命令接口在虚拟化环境下仍然可以使用,但是通常得到的结果是分配给当前虚拟机的虚拟处理器 (Virtual CPU) 的信息,而不是物理处理器 (Physical CPU) 的。
清单 2. 在AIX微分区上运行 prtconf 获得虚拟处理器的信息
- # prtconf | grep Processor
- Processor Type: PowerPC_POWER5
- Processor Implementation Mode: POWER 5
- Processor Version: PV_5
- Number Of Processors: 1
- Processor Clock Speed: 1654 MHz
- Model Implementation: Multiple Processor, PCI bus
- + proc0
以上输出表示本机当前被分配了一个虚拟处理器,及其硬件类型和运行频率。为了获得该虚拟机获得的物理处理器的数量,通常需要访问对应的 HMC (Hardware Management Console) 或者 AMM (Advanced Management Module) 来获得详细的信息和配置。下面的实例运行于 HMC。
清单 3. 在 HMC 上运行 lssyscfg 获得AIX微分区的配置
- hscroot@hmc:~> lssyscfg -r prof -m Server-9117-MMA-SN060DD72
- --filter "lpar_ids=p6ml4n05"
- name=p6ml4n05,lpar_name=p6ml4n05,lpar_id=6,lpar_env=aixlinux,
- all_resources=0,min_mem=2048,desired_mem=3072,max_mem=4096,
- min_num_huge_pages=0,desired_num_huge_pages=0,
- max_num_huge_pages=0,mem_mode=ded,proc_mode=shared,min_proc_units=0.1,
- desired_proc_units=0.2,max_proc_units=0.3,min_procs=1,desired_procs=1,
- max_procs=1,sharing_mode=cap,uncap_weight=0,shared_proc_pool_id=0,
- shared_proc_pool_name=DefaultPool,io_slots=none,lpar_io_pool_ids=none,
- max_virtual_slots=10,
- virtual_serial_adapters=0/server/1/any//any/1,1/server/1/any//any/1",
- virtual_scsi_adapters=2/client/1/vioserver/16/0,virtual_eth_adapters=none,
- hca_adapters=none,boot_mode=norm,conn_monitoring=0,auto_start=0,
- power_ctrl_lpar_ids=none,work_group_id=none,redundant_err_path_reporting=0,
- bsr_arrays=0,lhea_logical_ports=23000000/2/1/5/none,
- lhea_capabilities=23000000/0,
- lpar_proc_compat_mode=default,electronic_err_reporting=null,
- virtual_fc_adapters=none
此处跟 CPU 相关的重要字段有:
min_proc_units:为了启动该分区所需的最少的物理处理器个数
desired_proc_units: 该分区运行时通常需要的物理处理器个数
max_proc_units: 该分区在运行时允许获得的最多的物理处理器个数
关于AIX微分区的知识,我们就讲解到这里,在实际中应该好好的熟练过程。
【编辑推荐】