跳转到主要内容

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

所有提交的信息确保安全。

  • 关闭 [x]

当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

所有提交的信息确保安全。

  • 关闭 [x]

为 DB2 应用程序启用 HACMP Smart Assist

Lakshmi Priya Kanduru, 软件工程师, WSO2 Inc
Lakshmi Priya Kanduru 于 2006 年加入 IBM,在 HACMP 团队中担任软件工程师。她曾经从事 HACMP Smart Assist 的不同配置,对 HACMP/XD 技术感兴趣。

简介: HACMP Smart Assist 会在配置应用程序之前检查它们。HACMP 中集成的功能会对应用程序执行一些准备工作。本文介绍为 DB2® 应用程序启用 HACMP 的步骤。

发布日期: 2009 年 1 月 19 日
级别: 中级 其他语言版本: 英文
访问情况 : 1698 次浏览
评论: 


简介

HACMP (High Availability Cluster MultiProcessing) 是 IBM® 为 AIX® 上的业务关键应用程序提供的高可用性解决方案。它监视应用程序及其资源的故障,并在发生故障时自动地把工作重新分配到另一个集群节点,从而确保高可用性。

HACMP Smart Assist 会配置集群环境中的应用程序(WebSphere® Application Server、DB2 和 Oracle),尽可能减少集成 HACMP 和应用程序所需的工作量和时间。它可以简化多个应用程序的 HACMP 配置。用户可以使用 DB2 Smart Assist 在 HACMP 下配置非分区的 DB2 Universal Database 实例,从而实现高可用性。DB2 Smart Assist 支持 DB2 V8.1 和 V8.2。

本文讲解为 DB2 应用程序启用 HACMP 的步骤。DB2 Smart Assist 会在 HACMP 中配置应用程序之前检查应用程序的安装。本文假设集群中有两个节点,Node1 是主节点,Node2 是故障转移/接管/备用/辅助节点,见图 1。


图 1. 主节点和辅助节点
主节点和辅助节点

在开始之前,先阅读 DB2-specific requirementsSmart Assist for DB2 User's Guide,了解如何计划 HACMP 环境中的 DB2 安装。

  1. 创建卷组、逻辑卷和文件系统

    DB2 Smart Assist 要求 DB2 实例的主目录位于共享的卷组 (vg) 上。

     db2vg1 (shared)	-> (hdisk1 on Node1 and hdisk3 on Node2)

    建议用 HACMP C-SPOC 实用程序创建卷组。还可以使用 SMIT 或 AIX 命令创建逻辑卷和文件系统。在 Node1 上执行以下操作来创建卷组。

    执行以下操作用 C-SPOC 创建卷组:

    smitty hacmp 
       -> System Management(C-SPOC)
    	  -> HACMP Logical Volume Management
    	 	-> Shared Volume Groups
    			->  Create a Shared Volume Group. 
    

    选择用来创建卷组的适当节点。

    执行以下操作用 AIX 命令创建卷组:

    #umask 022
    # mkvg -f -V 70 -y db2vg1 hdisk1
    db2vg1
    #chvg -an db2vg1
    #mklv -t jfs2 -y dbinstance1 db2vg1 128
    dbinstance1
    #crfs -v jfs2 -d dbinstance1 -m /dbinstance1 -A no 
    #mount /dbinstance1
    

    用 SMIT 创建卷组的步骤如下:

    smitty vg
       -> Add a volume group
           -> Add an original volume group 
    

    输入卷组名 (db2vg1),选择物理卷名 (hdisk1),把 Activate volume group AUTOMATICALLY at system restart? 改为 NO,然后单击 Enter

    用 SMIT 创建逻辑卷的步骤如下:

    smitty lv 
         ->Add a Logical Volume  

    选择卷组名 (db2vg1) 并填写逻辑卷名 (dbinstance1)、逻辑分区的数量 (128)、物理卷名 (hdisk1) 和逻辑卷类型 (jfs2),然后单击 Enter

    用 SMIT 创建文件系统的步骤如下:

    smitty fs
     -> Add / Change / Show / Delete File Systems 
        -> Enhanced Journaled File Systems 
           -> Add an Enhanced Journaled File System on a Previously 
                          Defined Logical Volume 
    

    输入逻辑卷名 (dbinstance1) 和挂载点 (/dbinstance1),把 mount AUTOMATICALLY at system restart? 设置为 no,然后单击 Enter

  2. 创建用户和组

    在主节点 (Node1) 上创建 DB2 用户和组,把主节点上的 /etc/passwd、/etc/group、/etc/security/passwd、/etc/security/group 和 /etc/security/user 文件中的条目复制到所有故障转移节点上。可以用 SMIT 或 AIX 命令创建组和用户。

    按照以下步骤在主节点上创建 DB2 用户和组:

    
    #mkgroup id=515 dasadm1
    #mkuser id=515 pgrp=dasadm1 home=/dbinstance1/dasusr1 dasusr1
    #passwd dasusr1				
    Changing password for "dasusr1"
    dasusr1's New password:
    Enter the new password again:
    #pwdadm -c dasusr1
    #mkgroup id=516 db2grp1
    #mkgroup id=517 db2fgrp1
    #mkuser id=516 pgrp=db2grp1 groups=db2grp1,dasadm1 home=/dbinstance1/db2inst1 
                                 db2inst1
    #mkuser id=517 pgrp=db2grp1 home=/dbinstance1/db2fenc1 db2fenc1
    #passwd db2inst1
    Changing password for "db2inst1"
    dasusr1's New password:
    Enter the new password again:				
    #pwdadm -c db2inst1
    #passwd db2fenc1
    Changing password for "db2fenc1"
    dasusr1's New password:
    Enter the new password again:				
    #pwdadm -c db2fenc1
    

    使用 SMIT 创建组 (db2grp1, db2fgrp1, dasadm1):

    smitty
          ->Security and Users 
               ->Groups 
                    ->Add a Group 
    

    输入组名 (db2grp1),把 ADMINISTRATIVE group? 设置为 false,然后单击 Enter。Group ID 保持为空,这会自动生成一个可用的 groupID。

    使用 SMIT 创建用户 (db2inst1, dasusr1, db2fenc1):

    smitty 
           ->Security and Users 
                ->Users 
                    ->Add a user

    输入用户名 (db2inst1)、主组 (db2grp1)、组集 (db2grp1, dasadm1) 和主目录 (/dbinstance1/db2inst1),然后单击 Enter。User ID 保持为空,这会自动生成一个可用的 userID。

    分配或修改用户的密码:

    smitty 
           ->Security and Users 
                 ->Users
                     ->Change a User's Password 
    

    选择用户并单击 Enter

  3. 在主节点上安装 DB2

    在开始安装之前,确保满足以下条件:

    • 满足所有系统需求,包括磁盘、内存等等。请参见 AIX 操作系统的 DB2 installation requirements
    • 有 DB2 产品镜像文件可用。
    • DB2 安装向导是一个图形化安装程序,所以安装 DB2 需要一个能够运行图形用户界面的 'X' Windows® 软件。还要确保正确地导出 “DISPLAY”。

    启动 DB2 安装向导:

    • 作为根用户登录。
    • 切换到 DB2 产品映像的位置 (./product/disk1)。
    • 在产品映像所在的目录中运行 ./db2setup
    • IBM DB2 Setup Launchpad 打开。可以查看安装的前提条件和版本说明,还可以直接开始安装。
    • 单击 Install Products
    • 选择 DB2 UDB Enterprise Server Edition 并单击 Next
    • 在出现欢迎屏幕时,单击 Next
    • 选择 Accept 接受软件许可协议并单击 Next
    • 在 “Select Installation Type” 屏幕上,选择安装类型为 Typical。单击 Next
    • 选择 Install DB2 UDB Enterprise Edition Server on this computer and save your settings in a response file 并单击 Next
    • 下面的屏幕提示您输入 DB2 Administrator Server 的用户信息。选择 Existing user 并单击浏览按钮(上面显示三个点号),然后选择主组中的 All users。选择所选组中的 dasusr1。单击 OK,然后单击 Next
    • 在 “Setup a DB2 Instance” 屏幕上选择 Do not setup an instance,因为将手工创建此实例。单击 Next
    • 适当地设置 “SMTP Notification server” 并单击 Next

    Summary 屏幕显示为产品安装指定的首选项。单击 Finish

    在默认情况下,安装日志 db2setup.log 和 db2setup.err 在 /tmp 目录中。要确保此目录中有足够的空间。db2setup.log 文件捕捉所有 DB2 安装信息,包括错误。db2setup.err 文件捕捉 Java™ 返回的所有错误输出(例如,异常和陷阱信息)。

    安装成功之后,运行以下命令关闭 DB2 错误监视器:

    #chitab  fmc:2:off:/usr/opt/db2_08_02/bin/db2fmcd #DB2 Fault Monitor Coordinator 
    

  4. 运行以下命令创建一个共享的实例:
    #/usr/opt/db2_08_02/instance/db2icrt -a SERVER -s ese -u db2fenc1 
              -w 32 -p db2c_db2inst1 db2inst1
    
    #su - db2inst1	# become the instance owner
    db2start
    db2sampl		# create the sample database 
    db2 'connect to sample'
    db2 'select * from staff where dept=20'			
    db2 terminate
    db2stop
    exit
    

  5. 在备用节点上安装 DB2

    卸载 Node1 上的 varyoffvg:

    #umount /dbinstance1
    #varyoffvg db2vg1
    

    在 Node2 上执行以下命令:

    #importvg -V 70 -y db2vg1 hdisk3
    db2vg1
    #chvg -an db2vg1
    #mount /dbinstance1
    

    像上面一样执行 ./db2setup,然后运行:

    #chitab  fmc:2:off:/usr/opt/db2_08_02/bin/db2fmcd #DB2 Fault Monitor Coordinator 
    

  6. 在故障转移节点上的 /etc/services 中添加条目

    把主节点 (Node1) 上 /etc/services 中的以下条目复制到故障转移节点 (Node2) 上的 /etc/services 中。

    Node1 上 /etc/services 中的条目如下所示:

    DB2_db2inst1    60000/tcp
    DB2_db2inst1_1  60001/tcp
    DB2_db2inst1_2  60002/tcp
    DB2_db2inst1_END        60003/tcp
    

    在故障转移节点 Node2 上启用 DB2 实例之前,更新 db2nodes.cfg 文件。

     #vi /dbinstance1/db2inst1/sqllib/db2nodes.cfg
    

    中间一列应该是主节点的主机名。把辅助节点的主机名改为主节点的主机名。

    修改故障转移节点上的主机名:

    smitty hostname 
             -> set the Hostname 
    

    输入主节点的主机名。

    检查在故障转移节点 (Node2) 上是否能够启动此实例。

    su - db2inst1
    db2start
    db2 'connect to sample'
    db2 'select * from staff where dept=20'			
    db2 terminate
    db2stop
    exit
    

  7. Mutual Takeover 配置

    如果计划使用 HACMP 的 Mutual Takeover 配置(关于 Mutual Takeover 配置的信息请参见 Smart Assist for DB2 User's Guide),那么需要在另一个共享卷组(比如 db2vg2)上安装第二个实例。

    #mkvg -f -V 70 -y db2vg2 hdisk4 
    db2vg2
    #chvg -an db2vg2
    #mklv -t jfs2 -y dbinstance2 db2vg2 128
    dbinstance2
    #crfs -v jfs2 -d dbinstance2 -m /dbinstance2 -A no 
    #mount /dbinstance2
    

    然后创建用户 db2inst2:

    #mkuser id=526 pgrp=db2grp1 groups=db2grp1,dasadm1 home=/dbinstance2/db2inst2 
                                  db2inst2
    #passwd db2inst2
    Changing password for  db2inst2 
    dasusr1's New password:
    Enter the new password again:				
    #pwdadm -c db2inst2
    

    现在创建实例:

    #/usr/opt/db2_08_02/instance/db2icrt -a SERVER -s ese -u db2fenc1 
    -w 32 -p db2c_db2inst2 db2inst2
    

    为 db2inst2 创建数据库:

    #su - db2inst2		# become the instance owner
    db2start
    db2sampl		# create the sample database 
    db2 'connect to sample'
    db2 'select * from staff 			
    db2 terminate
    db2stop
    exit
    

    现在,在此节点上卸载文件系统和 varyoffvg 并把它导入另一个集群节点。确保把用户和组条目复制到故障转移节点上的 /etc/passwd、/etc/group、/etc/security/passwd、/etc/security/group 和 /etc/security/user 文件中。检查是否可以在此节点 (Node2) 上运行 db2inst2。

  8. 在 HACMP 中添加 DB2 应用程序

    如果还没有在所有节点上安装 HACMP,现在就安装它。在所有集群节点上的 /etc/hosts 中添加所需的条目并配置集群。关于配置集群的信息请参见 Configuring DB2 in an HACMP Cluster

    配置服务 IP 标签:

    
    smitty hacmp
        -> Extended Configuration 
            -> Extended Resource Configuration
                 -> HACMP Extended Resources Configuration 
                      ->Configure Service IP Labels/Address 
                          -> Add a service IP Label/Address 
                              -> Configurable to multiple nodes.
    

    选择 Network 并输入作为 DB2 的服务 IP 标签的 IP,单击 Enter

    把修改同步到所有集群节点上:

    smitty hacmp
           -> Initialization and Standard Configuration 
                ->Verify and Synchronize HACMP Configuration. 
    

    输入以下命令配置 DB2 应用程序:

    smitty hacmp
      -> Initialization and Standard Configuration 
            -> Configuration Assistants
                  -> Make Applications Highly Available (Use Smart Assists) 
                       -> Add an Application to the HACMP Configuration 
    

    HACMP 会发现安装了 DB2 的节点并在 DB2 Smart Assist 选择器屏幕上显示节点名,如下所示。



    图 2. DB2 Smart Assist 选择器屏幕
    DB2 Smart Assist 选择器屏幕

    确保 DB2 Smart Assistant 中显示的节点名是正确的。

    在选择 DB2 Smart Assistant 时,显示以下屏幕:



    图 3. 选择特定配置屏幕
    选择特定配置屏幕

    选择选项,输入应用程序名、故障转移节点、要监视的数据库和服务 IP 标签,单击 Enter。Smart Assist 会在 HACMP 配置中添加 DB2 实例(关于 DB2 Smart Assist 选项的信息请参见 Smart Assist for DB2 User's Guide)。

结束语

Smart Assist 有助于简化在 HACMP 下配置应用程序。为 DB2 应用程序启用 HACMP DB2 Smart Assist 之后,HACMP 会对应用程序进行监视并支持在发生故障时执行恢复。

致谢

我衷心感谢 Madan Chukka 和 Ravikiran Moningi 提供了非常有价值的反馈。


参考资料

学习

  • 您可以参阅本文在 developerWorks 全球站点上的 英文原文

  • AIX and UNIX 专区:developerWorks 的“AIX and UNIX 专区”提供了大量与 AIX 系统管理的所有方面相关的信息,您可以利用它们来扩展自己的 UNIX 技能。

  • AIX and UNIX 新手入门:访问“AIX and UNIX 新手入门”页面可了解更多关于 AIX 和 UNIX 的内容。

  • AIX and UNIX 专题汇总:AIX and UNIX 专区已经为您推出了很多的技术专题,为您总结了很多热门的知识点。我们在后面还会继续推出很多相关的热门专题给您,为了方便您的访问,我们在这里为您把本专区的所有专题进行汇总,让您更方便的找到您需要的内容。

  • Open source:访问 developerWorks 的 Open source 专区,获得丰富的 how-to 信息、工具和项目更新,帮助您用开放源码技术进行开发,并与 IBM 产品结合使用。

  • developerWorks 技术活动和网络广播:随时关注 developerWorks 技术活动和网络广播。

  • Podcasts:收听 Podcast 并了解 IBM 技术专家的最新想法。

获得产品和技术

讨论

关于作者

Lakshmi Priya Kanduru 于 2006 年加入 IBM,在 HACMP 团队中担任软件工程师。她曾经从事 HACMP Smart Assist 的不同配置,对 HACMP/XD 技术感兴趣。

关于报告滥用的帮助

报告滥用

谢谢! 此内容已经标识给管理员注意。


关于报告滥用的帮助

报告滥用

报告滥用提交失败。 请稍后重试。


developerWorks:登录


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 使用条款

 


当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

请选择您的昵称:

当您初次登录到 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, Information Management
ArticleID=365054
ArticleTitle=为 DB2 应用程序启用 HACMP Smart Assist
publish-date=01192009
author1-email=lakshmipriya@in.ibm.com
author1-email-cc=

标签

Help
使用 搜索 文本框在 My developerWorks 中查找包含该标签的所有内容。

使用 滑动条 调节标签的数量。

热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。

我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。

使用搜索文本框在 My developerWorks 中查找包含该标签的所有内容。热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。