在 IBM PowerVM 环境中从头开始使用脚本完成 IBM AIX LPAR 构建

在当今高需求的、快速变化的 IT 环境中,很多系统管理员都在寻找可以节省时间和自动化任务的领域。创建逻辑分区 (LPAR) 是一个常见任务,在手动执行该任务时,会花费大量的时间。换句话说,这是一个非常适合自动执行的任务!本文将会介绍从命令行创建 LPAR 的步骤,然后会介绍如何使用脚本让这个任务自动执行。

Brian K. Smith, 系统管理员, US Department of Homeland Security

http://www.ibm.com/developerworks/aix/library/au-aix-graphviz/brian.jpgBrian Smith 是一名 UNIX/Linux 系统管理员,他与妻子和两个孩子一起居住在科罗拉多斯普林斯。过去 7 年他一直在从事 IBM AIX 方面的工作。他专长的领域包括 AIX、IBM PowerVM、shell 脚本、Perl 编程和 Linux。您可以在 Brian Smith 的 AIX / UNIX / Linux / 开源博客 上找到有关其工作的更多信息。



2013 年 5 月 02 日

引言

在 IBM® PowerVM® 环境中创建 LPAR 是一个非常复杂的任务。您需要执行以下高级步骤才能使用 Virtual Small Computer System Interface (VSCSI)、N-Port ID Virtualization (NPIV) 或共享存储池在双虚拟 I/O 服务器 (VIOS) 中构建 LPAR。

在此示例中,两个 VIOS 的名称分别为 VIO1 和 VIO2。

从硬件管理控制台 (HMC) 命令行执行以下任务:

  • 使用两个虚拟 SCSI 客户端适配器(虚拟 SCSI 或共享存储池)或两个虚拟光纤通道 (FC) 客户端适配器 (NPIV) 创建一个 LPAR 配置文件。
  • 使用 DLPAR 向 VIO1 和 VIO2 中添加虚拟 SCSI 服务器适配器或虚拟光纤通道服务器适配器。
  • 使用 HMC 的保存当前配置功能将 VIO1 和 VIO2 的当前配置保存到其配置文件。
  • 在 VIO1 和 VIO2 上运行 cfgdev 命令,以检测新的适配器。
  • 根据槽号 (slot number) 在 VIO1 和 VIO2 服务器上查找虚拟主机 (vhost) 适配器,从而查找正确的 vhost 或 vfchost 设备。
  • 对于虚拟 SCSI,将存储从 VIO1 和 VIO2 映射到 vhost 设备。
  • 对于 NPIV,将虚拟光纤通道适配器映射到 VIO1 和 VIO2 上的物理适配器。
  • 对于共享存储池,创建一个逻辑单元号 (LUN),并将其映射到 VIO1 和 VIO2 上的 vhost 适配器。

从网络安装管理 (NIM) 服务器:

  • 向 /etc/hosts 文件添加服务器。
  • 将新的 LPAR 定义为一个 NIM 客户端。
  • 对 NIM 进行配置,将 mksysb 推送到包含可选 bosinst_data 资源的服务器。

在 HMC 命令行上返回:

  • 从网络启动 LPAR。
  • 打开连接到 LPAR 的控制台连接。
  • 在还原 mksysb 并启动 AIX 之后,完成所需的系统配置和自定义。

本文将介绍从命令行手动创建 LPAR 所需的步骤,还将介绍如何使用脚本自动执行这些任务。


从命令行手动创建 LPAR

创建 LPAR 的第一步就是了解用来构建 LPAR 的系统的架构。本文适用于包含 VIOS 实例的虚拟化 PowerVM 环境。但是,只要系统是通过 HMC 管理的,那么这些步骤可能同样适用于非虚拟化环境。

在虚拟化环境中,您有几种选择。对于存储,可以使用传统的虚拟 SCSI、NPIV 或共享存储池。对于虚拟化环境中的网络,大多数人使用的是虚拟以太网。

本文将介绍在包含双 VIOS 实例的 NPIV 环境中创建新的 LPAR 的详细信息。但是,如果在您的环境中使用新的 LPAR,那么可以修改这些指示,使它们适用于虚拟 SCSI 和共享存储池。

下面我们详细介绍一下将使用 NPIV 的命令行创建 LPAR 的上述步骤。

从 HMC 命令行创建 LPAR 配置文件

使用 mksyscfg HMC 命令创建 LPAR,并且您可以指定参数,如 LPAR 名称、要使用的虚拟以太网 VLAN ID、虚拟光纤通道适配器槽号、最小/最大/所需的 CPU、虚拟处理器和内存。清单 1 显示了用于创建 LPAR 配置文件的命令行示例。

清单 1. 用于创建 LPAR 配置文件的 mksyscfg 命令示例
mksyscfg -r lpar -m p770_01 -i "name=applpar01, profile_name=applpar01,lpar_env=aixlinux, 
min_mem=8192, desired_mem=16384, max_mem=24576, proc_mode=shared, min_procs=1, 
desired_procs=2, max_procs=4, min_proc_units=0.5, desired_proc_units=1, max_proc_units=2, 
sharing_mode=uncap, uncap_weight=128, conn_monitoring=1, boot_mode=norm, 
max_virtual_slots=200, \"virtual_eth_adapters=2/0/5//0/0/\", 
\"virtual_fc_adapters=25/client//vioprod1/25//0,26/client//vioprod2/26//0\" "

大多数命令行都是自说明的 (self-explanatory)。比较棘手的部分是虚拟适配器。

virtual_eth_adapter 的重要部分 (\"virtual_eth_adapters=2/0/5//0/0/\") 2 指定了插槽 2,而 5 指定了 VLAN ID 5。

virtual_fc_adapters 的重要部分 (\"virtual_fc_adapters=25/client//vioprod1/25//0,26/client//vioprod2/26//0\") 是本地/远程插槽(本例中为 25 和 26 )和 VIOS 名称。

有关 mksyscfg 命令语法的详细信息,请参阅 HMC 帮助页面

确保已对 virtual_eth_adaptersvirtual_fc_adapters 两边的引号进行转义,以便在运行该命令时 shell 不会丢弃它们。

使用 DLPAR 向 VIOS 实例添加虚拟服务器适配器,从而可以使用 HMC chhwres 命令将它动态添加到 VIOS 实例中。清单 2 中显示了一个示例命令。

清单 2. 将 DLPAR 虚拟服务器适配器添加到两个 VIOS 实例中的 “chhwres” 命令行的示例
chhwres -r virtualio -m p770_01 -o a -p vioprod1 --rsubtype fc -s 25 -a 
"adapter_type=server,remote_lpar_name=applpar01,remote_slot_num=25"

chhwres -r virtualio -m p770_01 -o a -p vioprod2 --rsubtype fc -s 26 -a 
"adapter_type=server,remote_lpar_name=applpar01,remote_slot_num=26"

该示例会添加相应的 VIOS 适配器,以便支持我们在 LPAR 配置文件中创建的客户端适配器。

-m 标志指定了托管系统的名称。

-p 标志指定了 VIOS 的名称。

-s 25 指定了 VIOS 槽号。

remote_lpar_name= 是 LPAR 客户端的名称。

remote_slot_num= 是客户端上的相应槽号。

在这些示例中,VIOS 插槽和客户端插槽是相同的。

将 VIOS 实例的当前配置保存到其配置文件中

此时,虚拟服务器适配器已经动态添加到 VIOS 实例中。但是,VIOS 配置文件尚未包含它们。如果没有将这些适配器放在配置文件中,那么在关闭 VIOS 实例并再次激活它时,就会丢失这些适配器。实现此目标的一个方法是将 VIOS 实例的当前配置保存到其配置文件中。可以使用 mksyscfg HMC 命令来完成此操作。清单 3 中显示了 mksyscfg 命令的一个示例。

清单 3. 将 VIOS 实例的当前配置保存到其配置文件中的 “mksyscfg” 命令行的示例
mksyscfg -r prof -m p770_01 -o save -p vioprod1 -n `lssyscfg -r lpar -m p770_01  --filter 
"lpar_names=vioprod1" -F curr_profile` --force
mksyscfg -r prof -m p770_01 -o save -p vioprod2 -n `lssyscfg -r lpar -m p770_01  --filter 
"lpar_names=vioprod2" -F curr_profile` --force

p770_01 是托管系统的名称。vioprod1vioprod2 是 VIOS 的名称。在运行这些命令时,首先会求 lssyscfg 命令的值,该命令返回 LPAR 的当前配置文件名称。然后求命令的 mksyscfg 部分的值,该部分将正在运行的配置保存到 lssyscfg 返回的配置文件中。

在 VIOS 实例上运行 cfgdev 命令来检测新的虚拟适配器

现在 VIOS 虚拟适配器已经动态添加(使用 DLPAR)到 VIOS 实例,而且还保存到其配置文件中。接下来的步骤是在 VIOS 实例上运行 cfgdev 命令来创建 vfchost 设备。完成该操作的方法是使用 HMC viosvrcmd 命令在每个 VIOS 上运行远程命令。清单 4 显示了这个命令。

清单 4. 在每个 VIOS 上运行 cfgdev 的 HMC“viosvrcmd” 命令的示例
viosvrcmd -m p770_01 -p vioprod1 -c "cfgdev -dev vio0"
viosvrcmd -m p770_01 -p vioprod2 -c "cfgdev -dev vio0"

-dev vio0 参数导致 cfgdev 仅作用于于 vio0 设备,让命令的运行速度比运行完整的 cfgdev(扫描所有设备)要快很多。

确定每个 VIOS 上的 vfchost 设备

此时已经运行了 cfgdev,并且已经在每个 VIOS 上创建了 vfchost 适配器。接下来的步骤是查找我们刚刚创建的适配器的正确 vfchost 设备名称。完成该操作的方法是使用 HMC viosvrcmd 命令在每个 VIOS 上运行 lsmap –all –npiv,然后查找刚刚添加的适配器槽号。清单 5 显示了该操作所需的命令行。

清单 5. 在 VIOS 上运行 “lsmap” 来查找正确 vhost 设备的 “viosvrcmd” 命令的示例
viosvrcmd -m p770_01 -p vioprod1 -c "lsmap -all -npiv" | grep "\-C25 " | cut -f 1 -d " "
viosvrcmd -m p770_01 -p vioprod2 -c "lsmap -all -npiv" | grep "\-C26 " | cut -f 1 -d " "

插槽 25 是添加到 vioprod1 的插槽,插槽 26 是添加到 vioprod2 的插槽,因此我们要查找这些槽号。每个命令都返回一个 vfchost 设备名称,如 vfchost1vfchost2

将虚拟光纤通道适配器映射到物理适配器

由于我们已经知道每个 VIOS 的 vfchost 设备,所以可以将这些设备映射到物理适配器。完成此操作的方法是使用 viosvrcmd 命令在 VIOS 上运行 vfcmap 命令,如清单 6 所示。

清单 6. 在每个 VIOS 上运行 “vfcmap” 的 “viosvrcmd” 命令的示例
viosvrcmd -m p770_01 -p vioprod1 -c "vfcmap -vadapter vfchost1 -fcp fcs0"
viosvrcmd -m p770_01 -p vioprod2 -c "vfcmap -vadapter vfchost1 -fcp fcs0"

将 vfchost1 替换为您在清单 5 中找到的设备。请注意,vfchost 设备在 VIO1 和 VIO2 上可能有相同的设备名称,也可能有不同的名称(例如,在 VIO1 上为 vfchost3,在 VIO2 上为 vfchost4)。将 fcs0 替换为将适配器映射到的物理光纤通道适配器。

显示适配器的 WWPN

此时,可以检索 NPIV 适配器的全球范围端口名称 (WWPN),以便进行存储区域网络 (SAN) 分区。使用 lssyscfg HMC 命令,通过如清单 7 中所示的命令显示 WWPN。

清单 7. 用于显示 NPIV WWPN 的 “lssyscfg” 命令的示例
lssyscfg -r prof -m p770_01 --filter lpar_names=applpar01 -F name,virtual_fc_adapters | 
sed -e 's/""*[0-9]*\/client\/[0-9]*\/[a-zA-Z0-9]*\/[0-9]*\///g' -e 's/\/0""*//g'

现在,您应该请求您的 SAN 管理员对 WWPN 进行分区并设置存储。

添加 LPAR 作为 NIM 客户端并设置 mksysb 安装

此时,已经从 HMC 运行了所有命令。现在我们需要切换到 NIM 服务器来完成几项任务。首先,我们将使用 AIX hostent 命令向 /etc/hosts 文件中添加新的 LPAR 客户端。清单 8 中显示了在 NIM 服务器上运行的 hostent 命令行的示例。

清单 8. 使用 “hostent” 命令向 NIM 服务器上的 /etc/hosts 添加 LPAR
hostent -a 192.168.0.3 -h applpar01

然后,我们可以将这个新的 LPAR 配置为 NIM 客户端,如清单 9 所示。

清单 9. 用于将 LPAR 配置为 NIM 客户端的命令示例
nim -o define -t standalone -a platform=chrp -a if1="find_net applpar01 0" -a 
cable_type1=tp -a net_settings1="auto auto" -a netboot_kernel=64 applpar01

接下来,配置 NIM 来推送一个 mksysb,如清单 10 所示。

清单 10. 用于通过配置 NIM 向 LPAR 推送 mksysb 的命令示例
nim -o bos_inst -a source=mksysb -a spot=spot61 -a mksysb=aix61 -a 
accept_licenses=yes -a installp_flags=-acNgXY -a no_client_boot=yes -a preserve_res=yes 
applpar01

在上面的命令中,spot=spot61mksysb=aix61 指定了完成安装将要使用的 NIM 资源名称。您还可以指定 bosinst_data 资源的名称,以便自动安装 mksysb。

从网络启动 LPAR 并打开一个控制台

对于后面的几个步骤,我们需要回到 HMC,并使用 lpar_netboot 命令从 NIM 服务器启动 LPAR,如清单 11 所示。

清单 11. 用于从 NIM 服务器启动 LPAR 的“lpar_netboot”命令示例
lpar_netboot -t ent -s auto -d auto -D -S 192.168.0.5 -G 192.168.0.1 -C 192.168.0.3 -K 
255.255.255.0 applpar01 applpar01 p770_01

在上面的命令中,-S 192.168.0.5 指定了 NIM 服务器的 IP 地址,-G 192.168.0.1 指定了网关,而 -C 192.168.0.3 指定了 LPAR 的 IP 地址。

最后一步是使用 mkvterm 命令打开一个连接到 LPAR 的控制台连接,如清单 12 所示。

清单 12. 用于打开连接到 LPAR 的控制台连接的 “mkvterm” 命令
mkvterm -m p770_01 -p applpar01

编写 LPAR 创建过程的脚本

了解如何从命令行手动创建 LPAR 之后,接下来的步骤就是编写这些任务的脚本。

本文中提供的脚本只是一个示例。必须对它进行定制和测试,然后才能在您的特定环境中使用。例如,该示例进行了某些假设,如果您的 LPAR 使用的子网为 255.255.255.0,那么默认网关将以 “.1” 结尾。设置该示例,以便添加两个虚拟光纤通道适配器和一个虚拟以太网适配器,如果需要的话,可以轻松对其进行定制,添加更多的适配器。您需要仔细查看该脚本,并针对您的环境进行相应的修改,在测试环境中对该脚本进行测试,然后才能在生产环境中使用它。

LPAR 创建脚本的输入是 CSV 格式的文件。最好采用 CSV 格式,因为该格式很容易在脚本中进行解析,并且很容易使用电子表格(如 LibreOffice Calc 或 Microsoft® Excel)进行编辑。

应该在电子表格应用程序中编辑输入文件,电子表格的每一行指定了 LPAR 的属性。您可以在文件中指定任意多个 LPAR。图 1 显示了正在电子表格应用程序中编辑的 CSV 文件。

图 1. 在电子表格应用程序中编辑 CSV 输入文件
在电子表格应用程序中编辑 CSV 输入文件

要创建具有适当标头的 CSV 文件,请下载清单 13 中所示的 input.csv 文件。

清单 13. 设置为 CSV 输入文件第一行的列标头
下载:input.csv

这些列如下所示:

  • LPAR_name – 将要创建的新 LPAR 的名称
  • System – 将在其上创建 LPAR 的托管系统的名称
  • VFC1_LPAR_slot – 将要进入 VIO1 的虚拟 FC 适配器的客户端/LPAR 槽号
  • VFC1_VIO1_slot – VIO1 的虚拟 FC 适配器的服务器/VIOS 槽号
  • VFC2_LPAR_slot – 将要进入 VIO2 的虚拟 FC 适配器的客户端/LPAR 槽号
  • VFC2_VIO2_slot – VIO2 的虚拟 FC 适配器的服务器/VIOS 槽号
  • eth_slot2_vlan – 用于客户端插槽 2 上的虚拟以太网适配器的虚拟 LAN (VLAN) ID
  • vio1 – VIO1 服务器的名称
  • vio2 – VIO2 服务器的名称
  • vcpu_min – 最少的虚拟 CPU 数量
  • vcpu_desired – 所需的虚拟 CPU
  • vcpu_max – 最大的虚拟 CPU 数量
  • cpu_min – 最少的 CPU 数量
  • cpu_desired –所需的 CPU 数量
  • cpu_max – 最大 CPU 数量
  • mem_min – 最少内存(以 GB 为单位进行指定)
  • mem_desired – 所需内存(以 GB 为单位进行指定)
  • mem_max – 最大内存(以 GB 为单位进行指定)
  • server_ip – 正在创建的 LPAR 的 IP 地址
  • nim_ip – NIM 服务器的 IP 地址
  • mksysb – 需要使用的 NIM mksysb 资源
  • spot – 要使用的 NIM spot 资源

在文件的每一行都需要所有这些字段。

清单 14 包含一个下载示例输入文件(该文件指定了要创建的两个 LPAR)的链接。

清单 14. 指定了要创建的两个 LPAR 的输入 CSV 文件的示例。
下载:example.csv

名为 csvtolpar.pl 的脚本是使用 CSV 文件名来运行的,该文件名是使用某个命令(如 ./csvtolpar.pl input.csv)在命令行上指定的。

该脚本的输出就是创建 LPAR 所需的全部命令行。该脚本的输出示例如清单 15 所示。

清单 15. 显示创建两个 LPAR 所需的命令的 csvtolpar.pl 脚本的输出
#Create LPAR, you can customize things such as the uncapped weight, max virtual slots,
etc.or add in extra parameters for things such as AME
mksyscfg -r lpar -m p770_01 -i "name=applpar01, profile_name=applpar01,
lpar_env=aixlinux, min_mem=8192, desired_mem=16384, max_mem=24576, 
proc_mode=shared, min_procs=1, desired_procs=2, max_procs=4,
min_proc_units=0.5, desired_proc_units=1, max_proc_units=2,
sharing_mode=uncap, uncap_weight=128, conn_monitoring=1,
boot_mode=norm, max_virtual_slots=200,
\"virtual_eth_adapters=2/0/5//0/0/\",
\"virtual_fc_adapters=25/client//vioprod1/25//0,26/client//vioprod2/26//0\" "

#DLPAR in virtual adapters to VIO servers
chhwres -r virtualio -m p770_01 -o a -p vioprod1 --rsubtype fc -s 25 -a 
"adapter_type=server,
remote_lpar_name=applpar01,remote_slot_num=25"
chhwres -r virtualio -m p770_01 -o a -p vioprod2 --rsubtype fc -s 26 -a
"adapter_type=server,
remote_lpar_name=applpar01,remote_slot_num=26"

#Save current config for VIO servers to profiles
mksyscfg -r prof -m p770_01 -o save -p vioprod1 -n `lssyscfg -r lpar -m p770_01 
 --filter "lpar_names=vioprod1" -F curr_profile` --force
mksyscfg -r prof -m p770_01 -o save -p vioprod2 -n `lssyscfg -r lpar -m p770_01 
 --filter "lpar_names=vioprod2" -F curr_profile` --force

#Run cfgdev on VIO servers to detect new virtual adapters
viosvrcmd -m p770_01 -p vioprod1 -c "cfgdev -dev vio0"
viosvrcmd -m p770_01 -p vioprod2 -c "cfgdev -dev vio0"

#Determine what the vhost device is for each VIO
vio1_vhost=`viosvrcmd -m p770_01 -p vioprod1 -c "lsmap -all -npiv" | grep "\-C25 " | 
cut -f 1 -d " " `
vio2_vhost=`viosvrcmd -m p770_01 -p vioprod2 -c "lsmap -all -npiv" | grep "\-C26 " | 
cut -f 1 -d " " `
echo "VIO1=$vio1_vhost    VIO2=$vio2_vhost"

#Map virtual fibre channel - Customize physical fcs adapter here
viosvrcmd -m p770_01 -p vioprod1 -c "vfcmap -vadapter $vio1_vhost -fcp fcs0"
viosvrcmd -m p770_01 -p vioprod2 -c "vfcmap -vadapter $vio2_vhost -fcp fcs0"

#Display WWPN's for zoning
lssyscfg -r prof -m p770_01 --filter lpar_names=applpar01 -F name,
virtual_fc_adapters | sed -e 's/""*[0-9]*\/client\/[0-9]*\/[a-zA-Z0-9]*\/[0-9]*\///g' 
-e 's/\/0""*//g'

#NIM Commands to add to hosts, define as client, and push out mksysb,
***run these commands on NIM server***, add " -a connect=nimsh" to 
define command line if using nimsh hostent -a 192.168.0.3 -h applpar01
nim -o define -t standalone -a platform=chrp -a if1="find_net applpar01 0"
-a cable_type1=tp -a net_settings1="auto auto" -a netboot_kernel=64 applpar01
nim -o bos_inst -a source=mksysb -a spot=spot61 -a mksysb=aix61
-a accept_licenses=yes -a installp_flags=-acNgXY -a no_client_boot=yes -a preserve_res=yes
applpar01

#HMC Netboot command and console command, Warning, this will REBOOT the LPAR if
it is running
lpar_netboot -t ent -s auto -d auto -D -S 192.168.0.5 -G 192.168.0.1
-C 192.168.0.3 -K 255.255.255.0 applpar01 applpar01 p770_01
mkvterm -m p770_01 -p applpar01

########################################################################################

#Create LPAR, you can customize things such as the uncapped weight, max virtual slots, 
etc.or add in extra parameters for things such as AME
mksyscfg -r lpar -m p770_01 -i "name=applpar02, profile_name=applpar02,
lpar_env=aixlinux, min_mem=4096, desired_mem=8192, max_mem=12288, 
proc_mode=shared, min_procs=1, desired_procs=1, max_procs=1,
min_proc_units=0.1, desired_proc_units=0.5, max_proc_units=1, 
sharing_mode=uncap, uncap_weight=128, conn_monitoring=1, 
boot_mode=norm, max_virtual_slots=200,
\"virtual_eth_adapters=2/0/5//0/0/\", \"virtual_fc_adapters=27/client//vioprod1/27//0,
28/client//vioprod2/28//0\" "

#DLPAR in virtual adapters to VIO servers
chhwres -r virtualio -m p770_01 -o a -p vioprod1 --rsubtype fc -s 27 -a
"adapter_type=server,remote_lpar_name=applpar02,remote_slot_num=27"
chhwres -r virtualio -m p770_01 -o a -p vioprod2 --rsubtype fc -s 28 -a 
"adapter_type=server,remote_lpar_name=applpar02,remote_slot_num=28"

#Save current config for VIO servers to profiles
mksyscfg -r prof -m p770_01 -o save -p vioprod1 -n 
`lssyscfg -r lpar -m p770_01  --filter "lpar_names=vioprod1" -F curr_profile` --force
mksyscfg -r prof -m p770_01 -o save -p vioprod2 -n
`lssyscfg -r lpar -m p770_01  --filter "lpar_names=vioprod2" -F curr_profile` --force

#Run cfgdev on VIO servers to detect new virtual adapters
viosvrcmd -m p770_01 -p vioprod1 -c "cfgdev -dev vio0"
viosvrcmd -m p770_01 -p vioprod2 -c "cfgdev -dev vio0"

#Determine what the vhost device is for each VIO
vio1_vhost=`viosvrcmd -m p770_01 -p vioprod1 -c "lsmap -all -npiv" | grep 
"\-C27 " | cut -f 1 -d " " `
vio2_vhost=`viosvrcmd -m p770_01 -p vioprod2 -c "lsmap -all -npiv" | grep 
"\-C28 " | cut -f 1 -d " " `
echo "VIO1=$vio1_vhost    VIO2=$vio2_vhost"

#Map virtual fibre channel - Customize physical fcs adapter here
viosvrcmd -m p770_01 -p vioprod1 -c "vfcmap -vadapter $vio1_vhost -fcp fcs0"
viosvrcmd -m p770_01 -p vioprod2 -c "vfcmap -vadapter $vio2_vhost -fcp fcs0"

#Display WWPN's for zoning
lssyscfg -r prof -m p770_01 --filter lpar_names=applpar02 -F name,
virtual_fc_adapters | sed -e 's/""*[0-9]*\/client\/[0-9]*\/[a-zA-Z0-9]*\/[0-9]*\///g'
-e 's/\/0""*//g'

#NIM Commands to add to hosts, define as client, and push out mksysb, 
***run these commands on NIM server***, add " -a connect=nimsh" to define
command line if using nimsh
hostent -a 192.168.0.4 -h applpar02
nim -o define -t standalone -a platform=chrp -a if1="find_net applpar02 0" 
-a cable_type1=tp -a net_settings1="auto auto" -a netboot_kernel=64 applpar02
nim -o bos_inst -a source=mksysb -a spot=spot61 -a mksysb=aix61 
-a accept_licenses=yes -a installp_flags=-acNgXY -a no_client_boot=yes 
-a preserve_res=yes applpar02

#HMC Netboot command and console command, Warning, this will 
REBOOT the LPAR if it is running
lpar_netboot -t ent -s auto -d auto -D -S 192.168.0.5 -G 192.168.0.1 
-C 192.168.0.4 -K 255.255.255.0 applpar02 applpar02 p770_01
mkvterm -m p770_01 -p applpar02

########################################################################################

csvtolpar.pl 脚本不会对您的系统进行任何修改。它只是显示运行将要创建的 LPAR 所需的命令。可以将这些命令行快速复制到 HMC 和 NIM 服务器中;如果设置了 Secure Shell (SSH) 密钥,那么可以修改该脚本,在 SSH 上运行这些命令,而不只是仅显示需要运行的命令。我喜欢复制这些命令,这样就可以确保每一步都能如期运行。

如果保存了输入 CSV 文件,那么以后就可以随时轻松重建 LPAR,或者可以改编 CSV 文件来轻松创建类似的 LPAR。

csvtolpar.pl 脚本是 Perl 脚本,可从清单 6 中下载获得。

清单 16. csvtolpar.pl Perl 脚本
下载:csvtolpar.pl

结束语

本文介绍了从命令行手动创建 LPAR 的步骤,还提供了用于自动创建 LPAR 的示例脚本,该脚本可针对您的环境进行定制。自动创建 LPAR 可以节省大量时间,满足日益增长的业务需求。

参考资料

学习

  • 请参阅 HMC 命令的 IBM 联机参考页面
  • 请参阅 IBM Redbooks 中的从头开始在 AIX 5L 中实现 NIM®
  • AIX and UNIX 专区:developerWorks 的“AIX and UNIX 专区”提供了大量与 AIX 系统管理的所有方面相关的信息,您可以利用它们来扩展自己的 UNIX 技能。
  • AIX and UNIX 新手入门:访问“AIX and UNIX 新手入门”页面可了解更多关于 AIX 和 UNIX 的内容。
  • AIX and UNIX 下载中心:在这里你可以下载到可以运行在 AIX 或者是 UNIX 系统上的 IBM 服务器软件以及工具,让您可以提前免费试用他们的强大功能。
  • IBM Systems Magazine for AIX 中文版:本杂志的内容更加关注于趋势和企业级架构应用方面的内容,同时对于新兴的技术、产品、应用方式等也有很深入的探讨。IBM Systems Magazine 的内容都是由十分资深的业内人士撰写的,包括 IBM 的合作伙伴、IBM 的主机工程师以及高级管理人员。所以,从这些内容中,您可以了解到更高层次的应用理念,让您在选择和应用 IBM 系统时有一个更好的认识。

讨论

  • 加入 developerWorks 中文社区。查看开发人员推动的博客、论坛、组和维基,并与其他 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=894644
ArticleTitle=在 IBM PowerVM 环境中从头开始使用脚本完成 IBM AIX LPAR 构建
publish-date=05022013