IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  AIX and UNIX  >

AIX 6.1 中的动态应用程序迁移

使用 WPAR 的应用程序迁移

developerWorks
文档选项

未显示需要 JavaScript 的文档选项

英文原文

英文原文


级别: 中级

Ken Milberg, 撰稿人, RoleModel Software, Inc.

2008 年 7 月 28 日

IBM® AIX® 6.1 中最受欢迎的创新无疑就是工作负载分区。工作负载分区允许您在托管的系统中使用更少的操作系统映像,通过允许对操作系统资源进行虚拟化可以实现这一点。动态应用程序迁移是工作负载分区的一个重要组成部分,它为工作负载分区 (WPAR) 提供了增强的可用性。简单地讲,它允许您在 WPAR 启动并且正在运行的时候,将 WPAR 从一个逻辑分区 (LPAR) 移动到另一个逻辑分区。它在使用 WPAR 的不同系统之间提供了自动的、基于策略的工作负载重定位。本文将研究如何/何时使用动态应用程序迁移,以及如何配置系统及其应用程序,以实现动态应用程序迁移。

您可以访问“AIX 6 资源中心”了解更多的 AIX 6 的新特性:

WPAR、LPAR 和动态应用程序迁移

WPAR 还有许多其他的优点,其中之一就是允许您更快地部署应用程序,并且仅需要更少的、专门的硬件资源。事实上,与逻辑分区 (LPAR) 不同的是,构建 WPAR 实际上并不需要任何物理资源。正如大多数系统管理员已经开始认识到的,LPAR 最大的缺点就是要维护多个映像,同时可能对昂贵的硬件资源(如 CPU 和 RAM)存在过度利用现象。换句话说,尽管分区可以帮助您将硬件整合和虚拟化到单个系统中,但通过 WPAR 技术实现的操作系统虚拟化则更进了一步,允许采用更细粒度的方法进行资源管理。通过允许共享 OS 映像可以实现这一点,并且这显然是对 CPU、RAM 和 I/O 资源的最有效的利用。

WPAR 并不是 LPAR 的替代,而是对它们的补充,并允许通过操作系统虚拟化进一步虚拟化应用程序工作负载。WPAR 还可以和 AIX 6.1 中的另一个重要创新——基于角色的访问控制 (RBAC)——进行很好地协作。那么,这项特性与动态应用程序迁移有什么关联呢?

动态应用程序迁移允许您将正在运行的 WPAR 从一个 LPAR 重定位到另一个 LPAR。虽然 Sun 通过其基于 zone 的策略可以提供类似的概念,但对于正在运行的应用程序来说,它并没有提供热迁移的功能。在所有基于 UNIX® 的系统中,只有 IBM AIX OS 实现了这项重要的创新。它的工作方式是使用诸如检查点 之类的特性以移动实际正在运行的分区。检查点保存并且验证当前应用程序的状态,然后在其他的 LPAR 中将应用程序启动到这个保存的状态。如果您将要使用这个特性,那么还需要诸如 HACMP 这样的高可用性解决方案吗?绝对需要。动态应用程序迁移会在预定的停机期间(而不是非预定的停机期间)提供增强的可用性,弄清楚这个区别是很重要的。需要主动地使用 WPAR 管理器或者命令行接口来启动 WPAR 的移动;这项操作并不是自动进行的。事实上,动态应用程序迁移是一项可选的特性,该特性可以在 WPAR 管理器组件内部启用。分区迁移和动态应用程序迁移之间有哪些区别呢?分区迁移是 Power6™ 的一个特性,它允许您将整个 AIX 或者 Linux® LPAR 从一台物理服务器迁移到另一台物理服务器。它不需要 AIX 6.1 或者 WPAR。这个特性在整体框架的计划停机期间是很有价值的。

如果您需要暂停整个托管系统的运行,那么您可以将它的分区移动到另一个服务器。通过允许您将 LPAR 移动到不同的物理服务器,它还允许您平衡工作负载和资源。动态应用程序迁移是 AIX 6.1 的一项独特创新,是其 WPAR 策略的组成部分,它允许您移动工作负载,而不是整个分区。实际的目标 WPAR 可以是不同的服务器,但并不一定必须是不同的服务器。它比较灵活,因为您可以在一些具备混合物理体系结构(Power5 和 Power6)的环境中使用它。它可以将应用程序从需要计划停机以便进行维护的系统中移动到别处。通过将工作负载从不堪重负的服务器移动到负载较轻的服务器,它还可以用于提高性能。而且,通过采用这种方式移动工作负载以允许物理服务器在非高峰期间进入睡眠状态,它还可以帮助节约电能。下面的表格介绍了动态应用程序迁移和分区迁移之间的一些基本区别。


表 1. 动态应用程序迁移和分区迁移之间的区别
类型动态应用程序迁移动态分区迁移
OSAIX 6.1Linux、AIX 5.3、AIX 6.1
硬件PowerPC® 970、POWER4™、5™、6™Power6
粒度WPARLPAR




回页首


动态应用程序迁移——配置方面的挑战

这个部分将介绍如何配置动态应用程序迁移。

有两种配置动态应用程序迁移的方式。第一种方式是使用 WPAR 管理器(IBM System Director 产品系列中的一部分),第二种方式是使用命令行。IBM 强烈建议您使用 WPAR 管理器,在使用过这两种方式之后,我认为使用管理器这种方式更加简单,并且功能也强大得多。而且,它还将在源和全局环境之间执行某些兼容性测试,而命令行则不提供这项功能。IBM 也曾提到:“因此,使用 WPAR 管理器是执行 WPAR 重定位的唯一推荐的方式”(有关这个内容的链接,请参见参考资料)。这样一来,我甚至无需考虑演示使用命令行移动 WPAR 的方法;然而,如果您打算进行试验,那么该命令行工具包括以下命令:

  • chkptwpar——这是创建 WPAR 中所有任务的快照的命令。
  • killwpar——这个命令将删除属于一个已经暂停的 WPAR 的所有任务。
  • restartwpar——这个命令将根据检查点状态创建工作负载分区。
  • resumewpar——这个命令将继续执行暂停的或者冻结的 WPAR。

WPAR 管理器使用了一个基于浏览器的接口,该接口允许从几乎任何平台来管理 WPAR。它设计用于管理 WPAR,并为用户使用动态应用程序迁移提供支持。它还是一项许可的产品,这意味着它需要付费。它包括一个由 DB2® 组成的中央数据库和需要安装在每台计算机上的代理。这是非常有用的,因为您在实际地创建、配置和启用动态应用程序迁移时,不需要登录到 LPAR 本身。它还提供了基于策略的迁移,该特性可以极大地减少您的整体工作负载。

在规划动态应用程序迁移时,定义重定位 WPAR 的原因,并以此作为开始,这一点是很重要的。在了解了重定位 WPAR 的原因 之后,您还将需要同时考虑源和目标系统中的工作负载。使用动态应用程序迁移作为一种工具以便允许您将应用程序从某个 LPAR(其物理服务器需要进行两个小时的维护)中迁移到别处是一回事;而使用它来提高应用程序的性能则完全是另一回事。在将其用于后一种用途时,您将需要搜索与源系统相比,具备更好的 CPU 和 内存资源的框架。如果您使用动态应用程序迁移的目的是进行能量管理,并且将其用作服务器整合工具,那么资源使用率就不是很重要了。





回页首


WPAR 管理器和动态应用程序迁移演示程序

这个部分将显示如何安装 WPAR 管理器以及重定位正在运行的 WPAR。

首先,安装 WPAR 管理器。这个过程可以划分为两个部分:

  1. 安装 WPAR 管理器
  2. 安装代理

在每个将要通过 WPAR 管理器进行管理的系统中都要安装代理,而 WPAR 管理器和中央数据库则只需要安装在一个系统中。通过安装 WPAR 管理器的文件集来开始执行这项任务(请参见清单 1)。


清单 1. 安装 WPAR 管理器的文件集
                
# installp -acqgYXd .  wparmgt.mgr
Name                        Level           Part        Event       Result
-------------------------------------------------------------------------------
wparmgt.mgr.rte             1.1.1.0         USR         APPLY       SUCCESS
wparmgt.mgr.rte             1.1.1.0         ROOT        APPLY       SUCCESS
wparmgt.cas.agentmgr        1.3.2.18        USR         APPLY       SUCCESS
wparmgt.cas.agentmgr        1.3.2.18        ROOT        APPLY       SUCCESS
tivoli.tivguid              1.3.0.0         USR         APPLY       SUCCESS
tivoli.tivguid              1.3.0.0         ROOT        APPLY       SUCCESS

# installp -acqgYXd .  wparmgt.db
+-----------------------------------------------------------------------------+
                    Pre-installation Verification...
+-----------------------------------------------------------------------------+
Verifying selections...done
Verifying requisites...done
Results...

SUCCESSES
---------
  Filesets listed in this section passed pre-installation verification
  and will be installed.

  Selected Filesets
  -----------------
  wparmgt.db.db2 1.1.1.0                      # Workload Partitions Manager ...

Installation Summary
--------------------
Name                        Level           Part        Event       Result
-------------------------------------------------------------------------------
wparmgt.db.db2              1.1.1.0         USR         APPLY       SUCCESS
wparmgt.db.db2              1.1.1.0         ROOT        APPLY       SUCCESS

在完成该文件集的安装之后,您需要对数据库进行配置: # /opt/IBM/WPAR/manager/db/bin/DBInstall.sh -dbinstallerdir /db2 -dbpassword my_password

当完成这项操作之后,您将需要配置 WPAR 管理器和数据库之间的数据库连接,并且定义 WPAR 代理的注册密码。要运行 WPAR 管理器的配置程序,可以使用三种支持的模式,对于我们的安装,我们使用了控制台模式(非 GUI 版本)。我们发现这种方法使用起来最简单。


清单 2. 运行 WPAR 管理器配置程序的控制台方法
                
lpar55p682e_pub[/tmp/wparmgr] > /opt/IBM/WPAR/manager/bin/WPMConfig.sh -i console
Preparing CONSOLE Mode Installation...
===============================================================================
Choose Locale...
----------------
    1- Catala
    2- Deutsch
  ->3- English
    4- Espanol
    5- Francais
    6- Italiano
    7- Portugues  (Brasil)
===============================================================================
WPAR Manager Configuration Summaryn
----------------------------------
Click Next to configure WPAR Manager with the following values.
Click Cancel to terminate.
WPAR Manager Access:
Public Port: 14080
Secure Port: 14443
Database Access:
Hostname: lpar55p682e_pub
Username: db2wmgt
Password: ********
Service Port: 50000
Name: WPARMGT
Agent Manager, configure local:
Base Port: 9511
Public Port: 9513
Secure Port: 9512
Registration password: ********
  ->1- Next
    2- Cancel
ENTER THE NUMBER OF THE DESIRED CHOICE, OR PRESS <ENTER> TO ACCEPT THE
   DEFAULT:
1
===============================================================================
WPAR Configuration Complete
---------------------------
The configuration of IBM Workload Partitions Manager for AIX has completed
successfully.
PRESS <ENTER> TO EXIT THE INSTALLER: lpar55p682e_pub[/tmp/wparmgr] >

最后一步是安装和配置代理,必须在所有希望使用 WPAR 管理器进行管理的每个分区中完成这项操作: # installp -acqgYXd <MOUNT_POINT> wparmgt.agent

在安装了文件集之后,可以使用下面的这个命令来配置代理: # /opt/IBM/WPAR/agent/bin/configure-agent -yourhostmachine

当这项任务完成时,我们就可以将浏览器的 IP 地址指定为配置 WPAR 管理器的位置。我可以从 VNC 客户端(在主机控制台中配置了 VNServer 之后)、或者从标准的 Firefox 浏览器、甚至从运行 Windows® 的 PC 出发,以使用 WPAR 管理器。仅当您处在与 WPAR 管理器相同的网络中时,后面一种方法才能正常工作。


图 1. 将浏览器的 IP 地址指定为配置 WPAR 管理器的位置
将浏览器的 IP 地址指定为配置 WPAR 管理器的位置

在使用您的 root 密码登录之后,您可以对托管的系统进行验证。我们有两个系统,如图 2 中所示。


图 2. 对托管的系统进行验证
对托管的系统进行验证

从这里开始,添加 WPAR,并且对它们进行配置,以使其能够进行重定位。您可以通过确保所使用的文件系统是 NFS 来进行这项操作,并且您需要选中名为“checkpointable”的选项。

这些步骤本身是相当明确的。

  1. 在已定义的服务器中创建工作的 NFS 环境。
  2. 使用 NFS 目录创建 WPAR,使用 -c 选项以支持检查点的设置,这是使用动态应用程序迁移所必需的。
  3. 重定位 WPAR。

在创建 WPAR 时,有几种不同的方法。在图 3 中,我们使用了 WPAR 管理器。


图 3. 使用 WPAR 管理器创建 WPAR
使用 WPAR 管理器创建 WPAR

在这个示例(请参见清单 3)中,我们将使用 mkwpar 从命令行创建规范文件。在 /usr/samples/wpars 中还有一个称为 sample.spec 的示例文件,您可以将该文件作为模板来使用。


清单 3. 使用 mkwpar 创建规范文件
                
# mkwpar -n app20 -h app20 -N interface=en0 netmask=255.255.192.0 
  address=172.29.140.243 -r -c -M directory=/vfs=nfs host=lpar32p682e_pub 
  dev=/scratch/app20root -M directory=/home vfs=nfs host=lpar32p682e_pub 
  dev=/scratch/app20home -M directory=/tmp  vfs=nfs host=lpar32p682e_pub 
  dev=/scratch/app20tmp -M directory=/var  
                  vfs=nfs host=lpar32p682e_pub dev=/scratch/app20var
  

现在,让我们返回到 WPAR 管理器。无论您在哪里创建 WPAR,都可以从这里重定位您的分区(请参见图 4)。


图 4. 启动对分区进行重定位的处理过程

图 5 显示了重定位处理正在进行中。


图 5. 重定位处理正在进行中
重定位处理正在进行中

需要说明的是,即便是使用 GUI,要使每项操作都正确执行,也仍然存在一些挑战,特别是在您首次开始使用系统的时候。我们发现这样一个有趣的错误,当我们在主机名中使用了下划线(_)时,WPAR 管理器将无法定位到一个托管的系统。在删除下划线之后,当然就可以使一切正常工作了,正如您在本文中所看到的。





回页首


总结

在本文中,我们讨论了 WPAR 上下文中的动态应用程序迁移,以及如何最好地使用这个系统。我们定义了动态应用程序迁移和动态分区迁移之间的区别。我们创建了 WPAR,并安装了 WPAR 管理器,以便帮助我们管理 WPAR 环境。最后,我们创建了 WPAR 以用于使用动态应用程序迁移的特殊目的,并且说明了如何创建 WPAR 并将其从一个系统迁移到另一个系统。动态应用程序迁移并不能取代高可用性,理解这一点是很重要的。虽然它有多种用途,但在执行计划停机时使用它是最合适的,它允许在不中断服务的情况下进行系统的维护。这是 AIX 6.1 中一项非常实际的、重要的创新,目前 Solaris 和 HP-UX 都没有提供这个特性。



参考资料

学习

讨论


关于作者

Ken Milberg 是 PMP,同时也是 techtarget.com 的撰稿人/站点专家,并为 searchopensource.com 提供 Linux 技术信息和支持。Ken 还是《IBM 系统杂志(开放系统版)》的撰稿人和技术编辑。Ken 拥有马里兰大学学院分校的计算机与信息科学学士学位和技术管理科学硕士学位。他是长岛 POWER-AIX 用户组的创立者和负责人。多年以来,他在大小型企业工作过,并且担任过从 CIO 到高级 AIX 工程师的各种职位。现在,他在 Future Tech 工作,这是一家总部设在长岛的 IBM 业务合作伙伴。Ken 是通过 PMI 认证的项目管理专业人员 (PMP),还是通过 IBM 认证的高级技术专家(CATE,IBM System p5 2006)。




对本文的评价










回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款