WEB开发网
开发学院操作系统Linux/Unix 在 Power System 上优化 WebSphere Application S... 阅读

在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

 2009-11-04 00:00:00 来源:WEB开发网   
核心提示:高级分区操作动态逻辑分区允许动态地把受管理系统的资源与分区连接起来以及解除连接,而不需要重新引导,在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下),可以使用 HMC GUI 或命令行界面执行这些任务, 基于脚

高级分区操作

动态逻辑分区允许动态地把受管理系统的资源与分区连接起来以及解除连接,而不需要重新引导。可以使用 HMC GUI 或命令行界面执行这些任务。

基于脚本的 LPAR 事件处理

可以使用 HMC 的 SSH 远程命令执行功能自动地管理 LPAR。可以创建自动化过程,从一个中心系统通过 SSH 远程执行功能管理和执行这些过程(例如,可以选择一个服务器来执行 NIM 或 CSM Server 等中心操作)。

单一、简单的远程命令执行

“单一、简单的远程命令执行” 意味着,可以按照前一部分中的 “HMC 命令行界面” 和前一部分中表 1 的说明,在 HMC 命令行界面上逐一执行命令。在 HMC 命令行界面上,可以使用单一命令获取大量信息或修改 LPAR 配置。

例如,可以使用命令 lssyscfg 列出受管理系统 p5+-9133-55A-SN10D1FAG 的所有 LPAR 及其配置文件属性。清单 1 显示使用 ssh 会话从 CSM Management Server madrid.itsc.austin.ibm.com 执行以下 HMC 命令 lssyscfg 的输出:

ssh wasp5l@riogrande "lssyscfg -r lpar -m p5+-9133-55A-SN10D1FAG" 

使用用户 ID wasp5l 把这个命令发送给 HMC riogrande.itsc.austin.ibm.com。


清单 1. 针对受管理系统的 HMC 命令 lssyscfg 的输出

#ssh wasp5l@riogrande "lssyscfg -r lpar -m p5+-9133-55A-SN10D1FAG" 
wasp5l@riogrande's password: 
name=wasp5l_vio,lpar_id=1,lpar_env=vioserver,state=Running,resource_con 
fig=1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG1,default_profil 
e=wasp5l_vio_limited,curr_profile=wasp5l_vio_limited,work_group_id=none 
,shared_proc_pool_util_auth=0,power_ctrl_lpar_ids=none,boot_mode=norm,l 
par_keylock=norm,auto_start=1,redundant_err_path_reporting=0 
name=de_lpar,lpar_id=2,lpar_env=aixlinux,state=Running,resource_config= 
1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG2,default_profile=lo 
aner_lpar,curr_profile=loaner_lpar,work_group_id=none,shared_proc_pool_ 
util_auth=0,power_ctrl_lpar_ids=none,boot_mode=norm,lpar_keylock=norm,a 
uto_start=0,redundant_err_path_reporting=0 
name=br_lpar,lpar_id=3,lpar_env=aixlinux,state=Running,resource_config= 
1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG3,default_profile=br 
_lpar,curr_profile=br_lpar,work_group_id=none,shared_proc_pool_util_aut 
h=0,power_ctrl_lpar_ids=none,boot_mode=norm,lpar_keylock=norm,auto_star 
t=0,redundant_err_path_reporting=0 
name=uk_lpar,lpar_id=4,lpar_env=aixlinux,state=Running,resource_config= 
1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG4,default_profile=uk 
_lpar,curr_profile=uk_lpar,work_group_id=none,shared_proc_pool_util_aut 
h=0,power_ctrl_lpar_ids=none,boot_mode=norm,lpar_keylock=norm,auto_star 
t=0,redundant_err_path_reporting=0 
name=us_lpar,lpar_id=5,lpar_env=aixlinux,state=Running,resource_config= 
1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG5,default_profile=us 
_lpar,curr_profile=us_lpar,work_group_id=none,shared_proc_pool_util_aut 
h=0,power_ctrl_lpar_ids=none,boot_mode=norm,lpar_keylock=norm,auto_star 
t=0,redundant_err_path_reporting=0 
name=pt_lpar,lpar_id=6,lpar_env=aixlinux,state=Running,resource_config= 
1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG6,default_profile=pt 
_lpar,curr_profile=pt_lpar,work_group_id=none,shared_proc_pool_util_aut 
h=0,power_ctrl_lpar_ids=none,boot_mode=norm,lpar_keylock=norm,auto_star 
t=0,redundant_err_path_reporting=0 
name=pl_lpar,lpar_id=7,lpar_env=aixlinux,state=Running,resource_config= 
1,os_version=0.0.0.0.0.0,logical_serial_num=10D1FAG7,default_profile=pl 
_lpar,curr_profile=pl_lpar,work_group_id=none,shared_proc_pool_util_aut 
h=0,power_ctrl_lpar_ids=none,boot_mode=norm,lpar_keylock=norm,auto_star 
t=0,redundant_err_path_reporting=0 
# 

清单 2 采用相同的方式,但是这一次把输出限制为分区(选项值 name)和操作环境(选项值 lpar_env)。


清单 2 针对 LPAR 环境的 HMC 命令 lssyscfg 的输出

[0:root@MADRID:]/home/root # ssh wasp5l@riogrande 
wasp5l@riogrande's password: 
Last login: Mon Oct 2 15:51:11 2006 from madrid.itsc.austin.ibm.com 
wasp5l@riogrande:~> lssyscfg -r lpar -m p5+-9133-55A-SN10D1FAG -F 
name,lpar_env 
wasp5l_vio,vioserver 
de_lpar,aixlinux 
br_lpar,aixlinux 
uk_lpar,aixlinux 
us_lpar,aixlinux 
pt_lpar,aixlinux 
pl_lpar,aixlinux 

在这两个清单中,都需要手工输入用户 wasp5l 的密码。下一步是启用不需要输入密码的远程执行。如果希望自动执行这个过程,就要执行从管理控制台到 HMC 的 SSH 密钥交换。对于这个任务的详细解释,请参见 Setting up secure script execution between SSH

clients and the HMC,可以在以下网址找到这份文档:

http://publib.boulder.ibm.com/infocenter/eserver/v1r3s/topic/iphai/settingupsec

urescriptexecutionsbetweensshclientsandthehmc.htm

复杂的远程命令执行

可以通过在 AIX 上运行脚本实现更复杂的远程命令执行。脚本通过 ssh 把命令发送给 HMC,从而收集关于 HMC、HMC 管理的系统和这些系统上的 LPAR 的相关信息。

关于如何运行脚本而不会提示输入 HMC 用户密码的详细解释,请参见 Techdocs Library 文档 passAIX ssh

client to pSeries HMC,可以在以下网址找到这份文档:

http://www-03.ibm.com/support/techdocs/atsmastr.nsf/032f6e163324983085256b79007

f5aec/f962418b4b10f21c86256dc6004abcfc?OpenDocument

分区启动和关闭过程的自动化

在 SSH 客户机和 HMC 之间设置安全脚本执行之后,可以开始使用自动化过程。例如,可能希望用另一个系统配置文件作为默认配置文件远程启动所有逻辑分区,以便在激活它们之前检查修改的设置。如果新的系统配置文件 (Virtual_IO_Client_Profile) 存在,那么可以使用以下命令:

chsysstate -m p5+-9133-55A-SN10D1FAG -o on -r sysprof -n Virtual_IO_Client_Profile 

再举一个例子,假设希望停止并启动一个 LPAR,以便激活用于测试的分区配置文件。这一测试在业务时间之后进行,而且不需要人工干预。如果临时的分区配置文件 de_limited 存在,那么通过一个调度的过程执行以下命令。

1. 使用 chsysstate 命令发送 shutdown -F 命令关闭 AIX 或 Virtual I/O Server 分区。

chsysstate -m p5+-9133-55A-SN10D1FAG -r lpar -o osshutdown -n de_lpar --immed 

2. 发送命令 lssyscfg 获取分区的实际状态。

lssyscfg -r lpar -m p5+-9133-55A-SN10D1FAG --filter ""lpar_names=de_lpar"" -F state 

3. 如果命令返回的分区状态是 Not Activated,那么启动分区。

chsysstate -m p5+-9133-55A-SN10D1FAG -r lpar -o on --id 2 -f de_limited 

通过同时使用 --restart 选项和 -o osshutdown 选项,可以用单一命令实现相同的结果:

chsysstate -m p5+-9133-55A-SN10D1FAG -r lpar -o osshutdown --restart -n de_lpar --immed 

应用程序和 drmgr 命令

在默认情况下,在 DLPAR 中运行的应用程序并不接收关于资源变化的任何信息;应用程序必须显式地注册以接收资源变化通知。当发生 DR 事件时,如果应用程序已经注册了 DR 脚本,它们就会知道资源变化。DR 脚本可以是任何类型的 shell 脚本、Perl 脚本或 AIX 5L 可执行文件。

在 HMC 上使用图形用户界面或命令行界面发出 DLPAR 操作请求之后,DR 管理器通知注册的 DR 脚本三次。

在检查阶段(在做任何事之前,应用程序可以拒绝或允许 DR 事件继续处理)

在处理前阶段(在改变资源之前)

在处理后阶段(在改变资源之后)

如果检查阶段的结果是允许处理,就执行处理前阶段和处理后阶段。

DR 管理器在调用每个 DR 脚本时通过第一个参数表示阶段的名称。例如,checkacquire 表示添加资源的检查阶段,preacquire 表示添加资源的处理前阶段,postacquire 表示添加资源的处理后阶段。同样,checkrelease、prerelease 和 postrelease 是删除资源时使用的第一个参数。使用第二个参数表示资源类型(CPU 或内存)。

对于添加和删除操作,都会调用应用程序脚本。在删除资源时,脚本解决由应用程序造成的会阻止删除资源的情况。存在某些处理器绑定或缺少可固定内存可能导致删除请求失败。表 1 中列出的命令可以识别这些情况,所以可以编写出能够解决它们的脚本。


表 1. DLPAR 处理资源依赖性

命令 用途
ps 在进程级显示 bindprocessor 连接和块系统调用状态。
bindprocessor 显示联机的处理器和建立新连接。
kill 向进程发送信号。
ipcs 在进程级显示固定的共享内存段。
lsrest 显示处理器集。
lsclass 显示 Workload Manager (WLM) 类,其中可能包含处理器集。
chclass 修改 WLM 类定义。

必须使用 drmgr 命令管理 DLPAR 脚本。drmgr 命令提供以下功能:

列出注册的 DLPAR 脚本并显示它们的信息。

在 DLPAR 脚本数据库中注册或卸载 DLPAR 脚本。

修改脚本安装路径。默认的目录是 /usr/lib/dr/scripts/all。

可以使用命令 drmgr -l 检查分区上安装的所有 DLPAR 脚本。清单 3 通过在 CSM Management Server 上执行 dsh 命令检查所有分区。


清单 3. 针对所有节点的 drmgr -l 输出

#dsh -n pt,pl,uk,br "drmgr -l" 
pt.itsc.austin.ibm.com: DR Install Root Directory: /usr/lib/dr/scripts 
pt.itsc.austin.ibm.com: Syslog ID: DRMGR 
pl.itsc.austin.ibm.com: DR Install Root Directory: /usr/lib/dr/scripts 
pl.itsc.austin.ibm.com: Syslog ID: DRMGR 
uk.itsc.austin.ibm.com: DR Install Root Directory: /usr/lib/dr/scripts 
uk.itsc.austin.ibm.com: Syslog ID: DRMGR 
br.itsc.austin.ibm.com: DR Install Root Directory: /usr/lib/dr/scripts 
br.itsc.austin.ibm.com: Syslog ID: DRMGR 

关于这个主题的更多信息,请参见 IBM Redbook Partitioning Implementations for IBM eServer p5 Servers(SG24-7039)或访问以下网址:

http://publib16.boulder.ibm.com/pseries/en_US/aixprggd/genprogc/dynamic_reconfig.htm

另外,AIX 文件集 bos.adt.samples 中的 /usr/samples/dr/scripts 目录中提供了清单 DLPAR 脚本;请参见第 132 页上的 4.3 节 “AIX 基本操作系统清单”。

动态地改变资源

可以在不重新引导分区操作系统的情况下改变分区的资源,比如处理器、内存和 I/O 槽。表 2 列出并解释在动态地改变内存和处理器资源时应用的规则。


表 2 改变 LPAR 资源的规则

动态任务 资源 内存 资源 处理器
添加 添加的内存量不能超过空闲内存量,即还没有分配给正在运行的分区的内存。不能超过分区当前使用的配置文件中指定的最大值。 添加的处理器数量不能超过空闲的系统处理器数量(还没有分配给正在运行的分区的处理器)。不能超过分区当前使用的配置文件中指定的最大数量。
删除 执行删除操作之后,剩余的内存量不能少于分区当前使用的配置文件中指定的最小值。 执行删除操作之后,剩余的处理器数量不能少于分区当前使用的配置文件中指定的最小值。
转移 执行操作之后,删除内存的分区的剩余内存量必须大于或等于分区配置文件中定义的最小内存值。 执行操作之后,删除处理器的分区的剩余处理器数量必须大于或等于分区配置文件中定义的最小处理器数量。

使用 HMC 命令行界面改变资源

在 HMC 命令行界面上,可以使用 chhwres 命令和 -o 选项改变资源。清单 4 在 DLPAR uk_lpar 中添加两个处理单元并使用 lshwres 命令检查结果。


清单 4.使用 chwres 命令在 LPAR 中添加两个处理器

#lshwres -r proc -m p5+-9133-55A-SN10D1FAG --level lpar --filter 
"lpar_names=uk_lpar" 
lpar_name=uk_lpar,lpar_id=4,curr_min_procs=1,curr_procs=1,curr_max_proc 
s=4 
#chhwres -r proc -m p5+-9133-55A-SN10D1FAG -o a -p uk_lpar --procs 2 
#lshwres -r proc -m p5+-9133-55A-SN10D1FAG --level lpar --filter 
"lpar_names=uk_lpar" 
lpar_name=uk_lpar,lpar_id=4,curr_min_procs=1,curr_procs=3,curr_max_proc 
s=4 

清单 4 表明 curr_procs 属性(表示可用的处理单元)的值由 1 变成了 3。清单 5 表明在 LPAR AIX 操作系统中可以看到这一变化;操作系统可用的处理器数量由 2 变成了 6。


清单 5.修改后的 DPLAR 的 bindprocessor 输出

[0:root@uk:]/home/root # bindprocessor -q 
The available processors are: 0 1 
# 
[0:root@uk:]/home/root # bindprocessor -q 
The available processors are: 0 1 2 3 4 5 

使用 HMC GUI 改变资源

前一部分中的 “使用 HMC 命令行界面改变资源” 解释了如何改变 LPAR 的可用处理单元。

可以使用 HMC GUI 实现相同的结果。在 HMC GUI 中选择 LPAR,打开 Add Processor 选项卡,见图 1。


图 1. HMC Selected - 添加处理器
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

第 64 页上的图 3 显示 Current Processing units count 是 0.50,Maximum Processing units count 是 2.00。

应该能够添加 1.50 个处理单元。但是,因为只有一个虚拟处理器可用,这一操作会失败并显示错误消息,见图 2。


图 2. 添加处理单元 - 错误消息
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

因此,我们先在系统中添加两个虚拟处理器,见图 3。


图 3.通过 HMC GUI 在

LPAR 中添加两个虚拟处理器
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下) 

动态 LPAR 分配和分区配置文件

在使用动态 LPAR 分区删除、改变或添加 I/O 适配器、内存、CPU 或虚拟适配器时,这些修改并不会自动地反映在为分区定义的配置文件中。因此,在重新配置时,建议更新配置文件。

最好先修改分区配置文件,然后动态地修改 LPAR,以避免这些修改在分区失效或关闭时丢失。如果不执行重新引导(比如使用 shutdown -Fr 命令),在分区配置文件中对分区所做的修改不会反映在 LPAR 中;只有当分区从 Not Activated 状态激活时,修改才会生效。

如果有多个工作负载,需要多个分区配置文件,那么只需使用对场景有意义的命名约定(比如 WebSphere Application Server _Prod_High 或 WebSphere Application Server _Prod_Med)命名分区配置文件,然后激活它们。

Virtual I/O Server 虚拟化配置

Virtual I/O Server 为 POWER5 系统上的客户机逻辑分区提供虚拟存储和共享以太网功能。它允许一个或多个分区共享 Virtual I/O Server 分区上的物理适配器和连接的磁盘,让客户机能够整合和尽可能减少物理适配器数量。

Virtual I/O Server 是虚拟世界和真实世界之间的链接。可以把它看作基于 AIX 的设施,它只在 POWER5 服务器上得到支持。Virtual I/O Server 在一个特殊的分区中运行,这个分区不能用来执行应用程序代码。

它主要提供两个功能:

虚拟 SCSI 设备(VSCSI 目标)的服务器组件

用于虚拟以太网的共享以太网适配器支持

使用 Virtual I/O Server 有助于实现以下功能:

在系统上的分区之间共享物理资源

创建分区而不需要增加物理 I/O 资源

为分区分配专用 I/O 或虚拟 I/O,创建超过可用 I/O 槽或物理设备数量的分区

尽可能充分利用系统上的物理资源

安装和定制 Virtual I/O Server

从 Advanced POWER Virtualization 特性附带的特殊 mksysb CD 安装 Virtual I/O Server 分区。

创建 VIO Server LPAR

VIO Server 安装在一个 LPAR 中,可以使用分区向导创建这个分区。如图 4 所示,只需选择 VIO Server 作为分区环境,而不是选择 AIX。

在创建运行 VIO Server 的 LPAR 时,请记住以下几点:

在为 Virtual I/O Server LPAR 选择内存值时,要特别注意最大值。如果选择比较大的值,比如 128 GB,就会把大量内存固定住。系统管理程序固件会在系统管理程序固件系统内存中保留最大值的 1/64 的内存。因此,如果选择 128 GB,就会在系统管理程序系统内存中保留 2 GB 内存,可能不需要这么多。可以在 IBM System Planning Tool (SPT) 中查看使用的系统管理程序系统内存。

在选择 CPU 数量时,应该使用 CPU 数量的真实估计值。如果工作负载需要两个 CPU,可能扩展到四个 CPU,那么就不要输入 12 个 CPU。如果要支持很高的网络通信量,那么最初至少应该给 Virtual I/O Server 分配一个完整的 CPU,除非生产工作负载确实可以使用更小的值。一般情况下,网络通信量会增加 CPU 利用率。磁盘通信量一般对 CPU 利用率影响不太大,因为对于比较慢的设备,I/O 会排队。

如果希望创建具有共享以太网适配器故障转移功能的双 Virtual I/O Server 配置,那么在主 Virtual I/O Server 上在 Trunk priority 面板中选择 1,在从 Virtual I/O Server 上选择 2。这样就会在两个 Virtual I/O Server 之间创建共享以太网适配器故障转移使用的控制路径。

为 VIO Server 和 LPAR 选择意义明确的名称。(在我们的清单中,增加了后缀 vio,比如 wasp5l_vio)。

在清单 6中,在 HMC 命令行界面上使用命令 lshwres 显示 VIO Server 使用的内存和处理器默认设置。


清单 6.VIO Server 最初的内存和处理器设置
#lshwres -r mem -m p5+-9133-55A-SN10D1FAG --level lpar --filter 
"lpar_names=wasp5l_vio" 
lpar_name=wasp5l_vio,lpar_id=1,curr_min_mem=128,curr_mem=512,curr_max_m 
em=768,pend_min_mem=128,pend_mem=512,pend_max_mem=768,run_min_mem=128,r 
un_mem=512 
#lshwres -r proc -m p5+-9133-55A-SN10D1FAG --level lpar --filter 
"lpar_names=wasp5l_vio" 
lpar_name=wasp5l_vio,lpar_id=1,curr_shared_proc_pool_id=0,curr_proc_mod 
e=shared,curr_min_proc_units=0.1,curr_proc_units=0.1,curr_max_proc_unit 
s=1.0,curr_min_procs=1,curr_procs=1,curr_max_procs=2,curr_sharing_mode= 
uncap,curr_uncap_weight=128,pend_shared_proc_pool_id=0,pend_proc_mode=s 
hared,pend_min_proc_units=0.1,pend_proc_units=0.1,pend_max_proc_units=1 
.0,pend_min_procs=1,pend_procs=1,pend_max_procs=2,pend_sharing_mode=unc 
ap,pend_uncap_weight=128,run_proc_units=0.1,run_procs=1,run_uncap_weigh 
t=128 
# 

可以使用 HMC GUI 获得相同的信息,见图 4。


图 4. VIO Server 最初的内存设置
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

在创建分区时,默认值只预定义为 128 MB,这对于安装 VIO Server 是不够的。因此,我们使用 512 MB 作为期望值。把最小内存值设置为至少等于期望值,以确保能够执行 VIO Server 操作。

保证分配 0.1 个 CPU 可以支持稳定的日常网络使用量。但是,通过使用不封顶的 CPU 资源,允许 VIO Server 在需要时使用 CPU 池中的空闲 CPU,可以增长到 1.0 个 CPU。我们在设置期间使用的值见图 5。

关于如何决定 VIO Server 的内存和 CPU 数量的详细信息,请参见 IBM System p Advanced POWER Virtualization (PowerVM) Best Practices(REDP-4194)的第 5 章。


图 5.VIO 最初使用的处理器设置
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

在 HMC 命令行界面上,可以使用 lshwres 命令获得这些信息,见清单7。


清单 7. VIO Server 处理器设置的 lshwres 输出
wasp5l@riogrande:~> lshwres -r proc -m p5+-9133-55A-SN10D1FAG --level 
lpar --filter "lpar_names=wasp5l_vio" 
lpar_name=wasp5l_vio,lpar_id=1,curr_shared_proc_pool_id=0,curr_proc_mod 
e=shared,curr_min_proc_units=0.1,curr_proc_units=0.1,curr_max_proc_unit 
s=1.0,curr_min_procs=1,curr_procs=1,curr_max_procs=2,curr_sharing_mode= 
uncap,curr_uncap_weight=128,pend_shared_proc_pool_id=0,pend_proc_mode=s 
hared,pend_min_proc_units=0.1,pend_proc_units=0.1,pend_max_proc_units=1 
.0,pend_min_procs=1,pend_procs=1,pend_max_procs=2,pend_sharing_mode=unc 
ap,pend_uncap_weight=128,run_proc_units=0.1,run_procs=1,run_uncap_weigh 
t=128 

现在,可以安装 VIO Server 了。

安装 VIO Server

可以采用以下方法之一安装 Virtual I/O Server:

安装介质(把 DVD-ROM 驱动器分配给分区并从介质引导)

HMC(把介质插入 HMC 上的 DVD-ROM 驱动器并执行 installios 命令)

NIM(把介质插入 NIM Master 上的 DVD-ROM 驱动器并执行 installios 命令)

安装过程本身不需要手工输入。

注意,不能像访问标准分区那样访问 Virtual I/O Server 分区。只有用户 padmin 可以对 Virtual I/O Server 分区进行管理访问,根用户不可以。使用虚拟终端登录之后,用户 padmin 会得到一个受限制的 shell,这是不可避免的,这个 shell 提供命令行界面。

在开始进一步配置之前,需要在受限制的 Virtual I/O Server shell 上输入 license -accept 以接受许可协议。

设置 VIO Server

在一般情况下,在创建分区和给分区分配虚拟设备之后,马上设置 VIO Server。这个过程包括需要在 HMC 和 VIO Server 端上执行的操作。因此,对于实现成功的配置,事先规划和设计布局是很重要的。

必须使用 HMC 界面执行以下步骤:

为 Virtual I/O Server 创建一个虚拟以太网适配器

创建虚拟 SCSI 服务器适配器

创建客户机分区

为客户机分区创建虚拟以太网适配器

为客户机分区创建虚拟 SCSI 适配器

必须使用 VIO Server 命令行界面执行以下步骤:

定义卷组和逻辑卷

创建一个共享以太网适配器

在客户机分区上安装 AIX 5L

对每个步骤的详细解释,请参见 IBM Redbooks PowerVM Virtualization on IBM System p: Introduction and

Configuration Fourth Edition(SG24-7940)。

设置虚拟设备

本节解释如何在 VIO Server 中设置虚拟设备,这些虚拟设备需要连接到分区配置文件。

命名约定

除了使用电子表格等跟踪工具之外,合适的命名约定对于管理设备信息也很关键。为了减少必须跟踪的数据量,虚拟 I/O 客户机和服务器上的设备名和槽应该尽可能匹配。

这一约定可以包括相应的卷组、逻辑卷和虚拟目标设备名。在虚拟目标设备名中包含虚拟 I/O 客户机主机名有助于简化跟踪。

设备槽编号

在建立命名约定之后,还应该为虚拟 I/O 适配器建立槽编号约定。

槽编号在虚拟存储和虚拟网络设备之间共享。在复杂的系统中,存储设备往往比网络设备多得多,因为每个虚拟 SCSI 设备只能与一个服务器或客户机通信。我们建议为所有 LPAR 上的网络设备保留 20 个槽编号,让网络和存储设备的槽编号分别集中在一起。

在虚拟 I/O 客户机和服务器上采用一致的槽编号可以简化管理。但是,当分区从一个服务器转移到另一个服务器时,可能无法保持一致的槽编号。

在只有一个 VIO Server 的环境中,存储适配器槽的编号应该从 21 或更高的数字开始递增。当客户机连接两个 VIO Server 时,两个 VIO Server 的适配器槽编号应该相互交错。第一个 VIO Server 使用从 21 开始的奇数槽,第二个 VIO Server 使用从 22 开始的偶数槽。在双服务器配置中,槽应该成对分配,每个客户机使用两个相邻的槽,比如 21 和 22 或 33 和 34。

在创建 LPAR 时每个 LPAR 的虚拟适配器槽的默认最大数量是 10,应该增加这个值。适合环境的数量取决于每个系统上预期的 LPAR 和适配器数量。每个未使用的虚拟适配器槽会占用少量内存,所以应该权衡考虑设置。可以使用 System Planning Tool 规划系统配置的内存需求,可以从下面的 URL 获得这个工具:

http://www.ibm.com/servers/eserver/iseries/lpar/systemdesign.html

因为 VSCSI 连接以内存速度操作,所以在 VIO Server 和客户机之间增加多个适配器一般不会提高性能。每个适配器对可以处理大量目标设备或磁盘。我们的清单使用表 3 中列出的分配定义。


表 3 服务器和客户机槽 ID 定义

分区名 服务器槽 ID 客户机槽 ID
de_lpar 31 32
br_lpar 41 42
uk_lpar 51 52
us_lpar 61 62
pt_lpar 71 72
pl_lpar 81 82

我们使用 HMC GUI 为 VIO Server 配置文件设置值 100,见图 6。


图 6. 最大虚拟适配器数量设置
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

图 7 显示映射所有物理和虚拟磁盘之后最终的 VIO 分区属性。

管理和导出 VIO Server 上的物理存储

Virtual I/O Server 以虚拟 SCSI 磁盘的形式向虚拟 I/O 客户机(VIOC)提供磁盘存储。VIO Server 必须把这些虚拟磁盘映射到物理存储。执行这种映射有三种方法,这些方法各有优点:

物理卷

逻辑卷

存储池

在这些选项中做出选择的一般规则是,通过 SAN 访问的磁盘设备应该作为物理卷导出,在 SAN 中管理存储分配。内部的和 SCSI 连接的磁盘设备应该用逻辑卷或存储池导出,让存储可以放在服务器内。

一个卷组不应该同时包含虚拟 I/O 客户机使用的逻辑卷和 VIO Server 操作系统使用的逻辑卷。把 VIO Server 文件系统放在 rootvg 中,使用其他卷组包含用于虚拟 I/O 的逻辑卷,用它们扩展虚拟存储设备的大小。

在向客户机导出逻辑卷时,在 VIO Server 上维护各个逻辑卷到虚拟 I/O 客户机的映射。逻辑卷管理器提供的额外抽象层对于跟踪物理磁盘设备和虚拟 I/O 客户机之间的关系很重要。

为了减少必须跟踪的数据量,虚拟 I/O 客户机和服务器上的设备名和槽应该尽可能匹配。这可以包括相应的卷组、逻辑卷和虚拟目标设备名。在虚拟目标设备名中包含虚拟 I/O 客户机主机名有助于简化跟踪。

在建立命名约定之后,还应该为虚拟 I/O 适配器建立槽编号约定。槽编号在虚拟存储和虚拟网络设备之间共享。

在确定 LPAR 上的虚拟 I/O 槽数量时,通过分区配置文件设置分区上可用的虚拟适配器槽的最大数量。修改配置文件需要关闭 LPAR。我们建议在设置最大槽数量时留出比较大的扩展空间,这样在添加新的虚拟 I/O 客户机时就不需要关闭 LPAR 或 VIO Server 分区。

即使有最完善的记录,有时候仍然必须手工跟踪客户机虚拟磁盘与物理硬件的关系。IBM Systems Hardware Information Center 提供一份关于跟踪虚拟磁盘的指南。在以下 URL 搜索 “Mapping virtual disks to physical disks”。在输入搜索字符串时一定要包含引号。

http://publib.boulder.ibm.com/infocenter/systems/index.jsp?topic=/iphb1/iph

b1_vios_managing_mapping.htm

根据选择的方法不同,可能需要跟踪以下信息:

Virtual I/O Server

服务器主机名

物理磁盘位置

物理适配器设备名

物理磁盘设备名

卷组或存储池名

卷组或存储池的后端设备名

VSCSI 适配器槽

VSCSI 适配器设备名

虚拟目标设备

虚拟 I/O 客户机

客户机主机名

VSCSI 适配器槽

VSCSI 适配器设备名

虚拟磁盘设备名


图 7. 导出的 VIO 磁盘映射
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图 7 显示物理存储、VIO Server 和客户机之间的映射。在 VIO Server 上,hdisk2 被分配给卷组 applvg_clients。在这个卷组中,创建了逻辑卷 applvg_uk。这个逻辑卷作为虚拟磁盘连接到 LPAR uk_lpar。

登录到分区 uk.itsc.austin.ibm.com 时,AIX 把虚拟设备映射为 hdisk1,它被分配给卷组 appl_vg。

清单 8 显示通过 Management Server madrid.itsc.austin.ibm.com 的 dsh 会话在节点 uk 上执行命令 lspv 的最终结果。


清单 8. 用第二个虚拟 hdisk1 在系统 uk 上执行 lspv
[2:root@MADRID:]/home/root # dsh -n uk "lspv" 
 
uk.itsc.austin.ibm.com: hdisk0 00c4790e281766f5 
rootvg active 
uk.itsc.austin.ibm.com: hdisk1 00c4790ecd59fa72 
appl_vg active 

为 VIO SCSI 客户机分区创建引导卷

为了给使用虚拟 SCSI 的分区分配引导卷,需要先在 VIO Server 上创建卷(物理和逻辑),然后为客户机分区创建虚拟设备。本节图 7 所示的定义演示这些步骤。

首先,在 VIO Server 上执行 lspv 命令。输出表明设备 hdisk1 和 hdisk2 是可用的,但是还没有配置,见清单 9。


清单 9. lspv 输出默认的 vios 输出
$ lspv 
NAME PVID VG 
STATUS 
hdisk0 000b7bac80a00769 rootvg 
active 
hdisk1 none None 
hdisk2 none None 
$ 

在我们的清单中,希望 hdisk1 包含所有逻辑卷并作为引导卷,而 hdisk2 作为共享卷组。我们在 hdisk1 上创建卷组 rootvg_clients,见清单 10。


清单 10. 使用 mkvg 命令创建 rootvg_clients 卷组
$ mkvg -f -vg rootvg_clients hdisk1 
rootvg_clients 
$ lspv 
NAME PVID VG STATUS 
hdisk0 000b7bac80a00769 rootvg active 
hdisk1 000b7bacc2fc3c83 rootvg_clients active 
hdisk2 none None 
$ 

现在,可以使用刚创建的卷组包含所有逻辑卷。接下来,创建逻辑卷 rootvg_uk,它将成为分区 uk 上的引导卷,见清单 11。


清单 11. 使用 mklv 命令创建 rootvg_uk
$ mklv -lv rootvg_uk rootvg_clients 20G 
rootvg_uk 
$ 
$ lsvg -lv rootvg_clients 
rootvg_clients: 
 
LV NAME TYPE LPs PPs PVs LV STATE MOUNT 
POINT 
rootvg_uk jfs 160 160 1 closed/syncd N/A 
$ 

使用 mkvdev 命令创建虚拟设备 vuk_rvg,见清单 12。


清单 12. 使用 mkvdev 命令创建虚拟设备 vuk_rvg
$mkvdev -vdev rootvg_uk -vadapter vhost0 -dev vuk_rvg 
$vuk_rvg Available 

清单 13 和清单 14 说明 VIO Server 上的虚拟 SCSI 磁盘和客户机之间的关系。

在 VIO Server 上,使用命令 lsmap 显示物理、逻辑和虚拟设备之间的映射,见清单 12。


清单 13. VIO 上节点 uk 的虚拟设备映射
$lsmap -vadapter vhost2 
SVSA Physloc Client Partition ID 
 
vhost2 U9133.55A.10D1FAG-V1-C51 0x00000004 
 
VTD vuk_rvg 
LUN 0x8100000000000000 
Backing device rootvg_uk 
Physloc 
# 

注意,逻辑卷 rootvg_uk 设备通过服务器虚拟适配器 (SVSA) vhost2 映射为 vuk_rvg,物理位置编码为 U9133.55A.10D1FAG-V1-C51。(图 10 也显示这一信息)。

接下来,在节点 uk.itsc.austin.ibm.com 上,使用命令 lscfg 和 lspv 创建关键生产数据列表。如清单 14 所示,hdisk0 映射到物理位置 U9133.55A.10D1FAG-V4-C52。

另外注意,位置 U9133.55A.10D1FAG-V1-C51 和 U9133.55A.10D1FAG-V4-C52 反映虚拟设备槽编号,参见“设备槽编号” 和第 71 页上的表 3。


清单 14.节点 uk 上的虚拟设备配置
#dsh -n uk "lscfg -vl hdisk0" 
uk.itsc.austin.ibm.com: hdisk0 
U9133.55A.10D1FAG-V4-C52-T1-L810000000000 Virtual SCSI Disk Drive 
#dsh -n uk lspv 
uk.itsc.austin.ibm.com: hdisk0 000b7bacc8a01fdf 
rootvg active 

现在,已经完成了分区的准备工作,可以开始安装基本操作系统了。

VIO Server 上的连网

在 HMC 上,可以使用一个安全的私有的 HMC 到服务处理器网络访问 VIO Server,打开一个控制台会话。因此,不必在 VIO Server 上设置专门用于管理的网络地址。但是,如果 VIO Server 根本不在任何网络上出现,就不会为 VIO Server 启用动态资源分配,因为无法连接它。

管理虚拟环境的关键是跟踪虚拟对象和物理对象的对应关系。在网络方面,这包括物理和虚拟网络适配器,以及跨主机和交换机的 VLAN。

根据是否选用带 802.1Q 标签的 VLAN,可能需要跟踪以下信息:

Virtual I/O Server

服务器主机名

物理适配器设备名

交换机端口

SEA 适配器设备名

虚拟适配器设备名

虚拟适配器槽编号

端口虚拟 LAN ID(带标签和不带标签的使用方法)

其他虚拟 LAN ID

虚拟 I/O 客户机

客户机主机名

虚拟适配器设备名

虚拟适配器槽编号

端口虚拟 LAN ID(带标签和不带标签的使用方法)

其他虚拟 LAN ID

槽编号在虚拟存储和虚拟网络设备之间共享。在复杂的系统中,存储设备往往比网络设备多得多,因为每个虚拟 SCSI 设备只能与一个服务器或客户机通信。我们建议为所有 LPAR 上的网络设备保留 20 个槽编号,让网络和存储设备的槽编号分别集中在一起;详细信息请参见第 70 页上的 “设备槽编号”。

在 VIO Server 上设置共享以太网适配器 (SEA)

必须通过 HMC 在分区配置文件级创建虚拟设备。我们修改当前使用默认设置的分区配置文件,见图 8。


图 8. 使用 HMC 为 VIO Server 配置虚拟以太网
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

因为修改应用于当前的分区配置文件,所以需要重新引导 VIO Server。

如第 79 页上的清单 15 所示,虚拟适配器 ent2 映射到物理适配器 ent0。另外注意,目前没有使用第二个物理适配器 ent1。需要在 VIO Server 上通过 oem_setup_env 会话执行此命令。


清单 15. VIO 最初的虚拟以太网适配器状态
# lscfg -l ent\* 
ent2 U9133.55A.10D1FAG-V1-C2-T1 Virtual I/O Ethernet 
Adapter (l-lan) 
ent0 U787B.001.DNWB206-P1-T9 2-Port 10/100/1000 
Base-TX PCI-X Adapter (14108902) 
ent1 U787B.001.DNWB206-P1-T10 2-Port 10/100/1000 
Base-TX PCI-X Adapter (14108902) 

接下来,使用 mkvdev -sea 选项为虚拟适配器 ent2 创建 SEA。使用命令 lsdev 确认已经创建了这个适配器,见清单 16。


清单 16. 虚拟以太网适配器 ent2 状态
$mkvdev -sea ent0 -vadapter ent2 -default ent2 -defaultid 2 
$lsdev -dev ent2 
 
name status 
description 
ent2 Available Virtual I/O Ethernet Adapter (l-lan) 

创建以太网 TCPIP 接口以启用 TCP/IP 通信。必须使用命令 mkvdev 生成的虚拟接口名。在我们的清单中,它是接口 en3,见清单 17。


清单 17. 在 VIO 虚拟以太网上运行 mktcpip
$mktcpip -hostname wasp5l_vio -inetaddr 9.3.5.170 -interface en3 
-netmask 255.255.255.0 -gateway 9.3.5.41 
 
$lsdev -dev en3 
name status 
description 
en3 Available Standard Ethernet Network Interface 

现在,其他 LPAR 可以使用这个共享虚拟以太网接口,而不需要分配物理以太网适配器。必须在分区配置文件中创建虚拟适配器,见图 9。


图 9. 使用 HMC 为客户机分区配置虚拟以太网
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

把虚拟设备映射到客户机分区配置文件

在用 VIO Server 完成设置之后,必须在 HMC 上把虚拟 SCSI 磁盘和虚拟以太网适配器映射到客户机分区配置文件。可以使用 lsdev 命令在 VIO Server 上检查最终结果,见清单 18。


清单 18 在 VIO Server 上执行 lsdev -virtual
$ lsdev -virtual 
name status 
description 
ent2 Available Virtual I/O Ethernet Adapter (l-lan) 
vhost0 Available Virtual SCSI Server Adapter 
vhost1 Available Virtual SCSI Server Adapter 
vhost2 Available Virtual SCSI Server Adapter 
vhost3 Available Virtual SCSI Server Adapter 
vhost4 Available Virtual SCSI Server Adapter 
vhost5 Available Virtual SCSI Server Adapter 
vsa0 Available LPAR Virtual Serial Adapter 
vbr_rvg Available Virtual Target Device - Logical Volume 
vde_rvg Available Virtual Target Device - Logical Volume 
vpl_rvg Available Virtual Target Device - Logical Volume 
vpt_rvg Available Virtual Target Device - Logical Volume 
 
 
 
vuk_rvg Available Virtual Target Device - Logical Volume 
vus_rvg Available Virtual Target Device - Logical Volume 
ent3 Available Shared Ethernet Adapter 

我们使用 HMC GUI 界面在 VIO 虚拟设备和客户机分区之间建立链接。如“设备槽编号” 所述,这说明了使用槽编号分配约定的重要性。图 10 显示映射到客户机的虚拟 SCSI 设备。


图 10. 使用 HMC 为客户机分区配置虚拟 SCSI 磁盘
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

共享以太网适配器映射到每个客户机分区配置文件,见图 11。


图 11. 使用 HMC 为客户机分区配置虚拟以太网
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

图 12 显示 VIO Server 的分区配置文件中服务器适配器和客户机适配器之间的属性关系。


图 12. VIO Server 中 DLPAR UK 的 VSCSI 设置
在 Power System 上优化 WebSphere Application Server,第 3 部分: 设置 Power System 硬件和分区(下)

图片看不清楚?请点击这里查看原图(大图)。

VIO Server 的备份和可用性

Virtual I/O Server 分区是一个重要的分区;需要保证客户机分区总是可以使用它。如果需要重新引导或恢复它,那么通过 VIO Server 部署的所有分区都将不可用。因此,执行备份和可用性措施是很重要的。

备份

应该定期使用 backupios 命令备份 Virtual I/O Server,在可引导的磁带或者多卷的 CD 或 DVD 上创建根卷组的可安装映像。还应该在文件系统上创建可安装的 NIM 映像。

可用性

另外,可以使用 mirrorios 命令把 VIO Server 的 rootvg 卷组中的所有逻辑卷镜像到一个物理驱动器上,这个物理驱动器必须已经是 rootvg 卷组的成员。

实现 rootvg 的镜像有两个主要原因:

如果 VIO Server 操作系统使用的磁盘发生故障,可以使用另一个磁盘上的操作系统镜像拷贝,这可以保证操作系统的操作连续性。

能够从多个磁盘上的 rootvg 引导,从而应对引导磁盘故障。在某些情况下,从另一个磁盘引导可能需要用户交互。

清单 19 演示如何在 rootvg 中添加 VIO Server 上的硬盘 hdisk1,创建镜像,显示包含两个引导设备的新的引导列表。


清单 19. mirrorios 命令
$bootlist -mode normal 
hdisk0 blv=hd5 
$extendvg rootvg hdisk 
$lspv 
NAME PVID VG 
STATUS 
hdisk0 00cba77f96c080df rootvg 
active 
hdisk1 00cba77f0636e164 rootvg 
active 
$mirrorios -f hdisk 
$bootlist -mode normal 
hdisk1 blv=hd5 
hdisk0 blv=hd5 

Tags:Power System 优化

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接