用于 WebLogic Server 的 Sun Cluster 数据服务指南(适用于 Solaris OS)

安装和配置 Sun Cluster HA for BEA WebLogic Server

本章介绍了如何安装和配置 Sun Cluster HA for BEA WebLogic Server。

本章包含以下过程。

Sun Cluster HA for BEA WebLogic Server 概述

请使用本节中的信息了解如何使 BEA WebLogic Server 应用程序获得高可用性。

在 Sun Cluster 系统中运行的 BEA WebLogic Server 提供了一个具有高可用性的平台,以在分布式异构应用程序环境中对使命关键的电子商务应用程序进行开发和部署。

Sun Cluster HA for BEA WebLogic Server 为 BEA WebLogic Server 应用程序提供了故障监视和高可用性。 还为 WebLogic 管理服务器和 WebLogic 受管理服务器提供了高可用性。 因为 Sun Cluster HA for BEA WebLogic Server 仅支持非群集的 BEA WebLogic Server,所以在故障转移或重新启动期间可能会丢失客户机会话。


注意:

Sun Cluster HA for BEA WebLogic Server 为独立的 WebLogic Server 实例(不使用 WebLogic Server 群集的实例)提供高可用性。


有关故障转移服务的概念信息,请参见《Sun Cluster 概念指南(适用于 Solaris OS)》。

表 1–1 对 BEA WebLogic Server 组件的保护

BEA WebLogic Server 组件 

保护该组件的服务  

BEA WebLogic Server 

Sun Cluster HA for BEA WebLogic Server  

资源类型为 SUNW.wls

BEA WebLogic Server 数据库 

BEA WebLogic Server 和 Sun Cluster 支持的所有数据库。 

HTTP 服务器  

BEA WebLogic Server 和 Sun Cluster 支持的所有 HTTP 服务器 

安装和配置 Sun Cluster HA for BEA WebLogic Server

表 1–2 列出了安装和配置 Sun Cluster HA for BEA WebLogic Server 的任务。 请按照列出的顺序执行这些任务。

表 1–2 任务对应关系: 安装和配置 Sun Cluster HA for BEA WebLogic Server

任务 

参考 

规划 BEA WebLogic Server 的安装 

规划 Sun Cluster HA for BEA WebLogic Server 的安装和配置

准备节点和磁盘 

如何准备节点

安装和配置 BEA WebLogic Server 

如何安装 BEA WebLogic Server

安装数据库

安装 Web 服务器

检验 BEA WebLogic Server 的安装和配置 

如何检验 BEA WebLogic Server 的安装和配置

安装 Sun Cluster HA for BEA WebLogic Server 软件包 

如何使用 Web Start 程序安装 Sun Cluster HA for BEA WebLogic Server 软件包

如何使用 scinstall 公用程序安装 Sun Cluster HA for BEA WebLogic Server 软件包

将 Sun Cluster HA for BEA WebLogic Server 注册和配置为故障转移数据服务 

如何将 Sun Cluster HA for BEA WebLogic Server 注册和配置为故障转移数据服务

检验 Sun Cluster HA for BEA WebLogic Server 的安装和配置 

如何检验 Sun Cluster HA for BEA WebLogic Server 的安装和配置

查看 Sun Cluster HA for BEA WebLogic Server 故障监视器 

Sun Cluster HA for BEA WebLogic Server 故障监视器的操作

规划 Sun Cluster HA for BEA WebLogic Server 的安装和配置

本节包含规划 Sun Cluster HA for BEA WebLogic Server 的安装和配置所需的信息。

配置限制


小心:小心:

如果您未遵循这些限制,您的数据服务配置可能不受支持。


本节提供了适用于 Sun Cluster HA for BEA WebLogic Server 的软件和硬件配置限制的列表。 请遵循本节中的限制来规划 Sun Cluster HA for BEA WebLogic Server 的安装和配置。

有关适用于所有数据服务的限制,请参见 Sun Cluster Release Notes for Solaris OS

配置要求


小心:小心:

如果您未遵循这些要求,您的数据服务配置可能不受支持。


请遵循本节中的要求来规划 Sun Cluster HA for BEA WebLogic Server 的安装和配置。 这些要求仅适用于 Sun Cluster HA for BEA WebLogic Server。 您必须先满足这些要求,然后再进行 Sun Cluster HA for BEA WebLogic Server 的安装和配置。

有关适用于所有数据服务的要求,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“Sun Cluster 数据服务的配置指导”

标准数据服务配置

请使用本节中的标准配置来规划 Sun Cluster HA for BEA WebLogic Server 的安装和配置。 Sun Cluster HA for BEA WebLogic Server 支持本节中的标准配置。

除了本节中提供的标准配置,还可能有以下 BEA WebLogic Server 配置。


注意:

当前支持将 BEA WebLogic Server 作为故障转移数据服务。


Sun Cluster HA for BEA WebLogic Server 可能还支持其他配置。 但是,您必须与您的 Sun 服务供应商联系以获得有关其他配置的信息。

简单配置

Sun Cluster HA for BEA WebLogic Server 的这种简单配置使用两个资源组,它们的配置如下。

RG1 和 RG2 均为故障转移资源组

仅当将 BEA WebLogic Server 安装在全局文件系统中时,此配置才是可能的。 有关此配置的插图,请参见图形 1–1

图形 1–1 Sun Cluster HA for BEA WebLogic Server 的简单配置

说明: 前面的内容介绍了该图形。

配置 1

在此配置中,RG1、RG2、RG3 和 RG4 是故障转移资源组,它们的配置如下。

仅当将 BEA WebLogic Server 安装在全局文件系统中时,此配置才是可能的。

配置 2

在此配置中,RG1、RG2 和 RG3 是故障转移资源组,它们的配置如下。

仅当将 BEA WebLogic Server 安装在全局文件系统中时,此配置才是可能的。

配置 3

如果在使用 HAStoragePlus 的故障转移文件系统中安装了 BEA WebLogic Server,则必须在同一故障转移资源组(具有与故障转移文件系统的相关性)中配置所有 BEA WebLogic Server 实例。

RG1 包含逻辑主机资源以及所有管理和受管理服务器资源。

有关如何注册与 HAStoragePlus 资源具有相关性的资源的信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“启用具有高可用性的本地文件系统”

有关此配置的插图,请参见图形 1–2

图形 1–2 Sun Cluster HA for BEA WebLogic Server 文件系统故障转移配置

说明: 前面的内容介绍了该图形。

准备节点和磁盘

本节包含准备节点和磁盘所需的过程。


注意:

以下步骤基于在简单配置中介绍的简单配置。


如何准备节点

请使用此过程来准备 BEA WebLogic Server 的安装和配置。

    创建故障转移资源组以保留逻辑主机名和 BEA 管理服务器资源。


    # scrgadm -a -g RG1 [-h nodelist]
    

    添加逻辑主机名资源。

    logical-host–1 是 BEA WebLogic 管理服务器将侦听的主机名。 这可以通过 WebLogic 控制台进行设置。


    # scrgadm -a -L -g RG1 -l logical-host-1
    

    使资源组联机。


    # scswitch -Z -g RG1
    

    创建故障转移资源组以保留逻辑主机名和 WebLogic 受管理服务器资源。


    注意:

    根据 BEA WebLogic Server 的数量以及规划的配置,来创建资源组和 logical_hostname 资源。 (请参见标准数据服务配置 。)



    # scrgadm -a -g RG2 [-h nodelist]
    

    添加逻辑主机名资源。

    logical-host-2 是 BEA WebLogic 管理服务器将侦听的主机名。


    # scrgadm -a -L -g RG2 -l logical-host-2
    

    使资源组联机。


    # scswitch -Z -g RG2
    

安装和配置 BEA WebLogic Server 应用程序

本节包含安装和配置 BEA WebLogic Server 应用程序所需的过程。

如何安装 BEA WebLogic Server


注意:

此过程基于在简单配置中介绍的配置。 如果要规划其他配置,则必须对 BEA WebLogic Server 进行相应的配置。


  1. 按照 BEA WebLogic Server 文档在全局文件系统或故障转移文件系统中安装 BEA WebLogic Server。

  2. 按照 BEA WebLogic Server Administration Guide 配置 WebLogic 域。


    注意:

    配置 BEA WebLogic Server 时,请输入逻辑主机名或其 IP 地址。


  3. 完成对域的所有必要配置后,关闭管理服务器。

  4. 编辑管理服务器 START 脚本和受管理服务器 START 脚本以设置 WLS_USERWLS_PW

    不使用任何变量应该可以运行 START 脚本。


    注意:

    代理需要使用 WLS_USERWLS_PW 执行 BEA WebLogic Server 的顺序关闭。 如果这是安全性问题,则可以在 boot.properties 文件中设置这些特性。 但是,顺序关闭将无法进行,代理将执行 BEA WebLogic Server 的强制关闭。


  5. 在受管理服务器 START 脚本中,设置 ADMIN_URLSERVER_NAME 变量。

    不使用任何变量应该可以运行此脚本。

  6. setWLSEnv.shstartWLS.sh 脚本中设置所需的环境变量。

    这些环境变量包括所有附加的 CLASSPATHLD_LIBRARY_PATH 等。这些脚本包含所有必需的环境变量(例如 CLASSPATHLD_LIBRARY_PATH)。

  7. 检验 config.xml 文件是否与 START 脚本在同一目录中。

安装数据库

如果要将数据库与 BEA WebLogic Server 一起使用,请通过其安装文档来安装数据库。 如果要使用的数据库具有针对 Sun Cluster 的高可用性代理,请安装该版本。

安装 Web 服务器

如果要将 Web 服务器与 BEA WebLogic Server 一起使用,请通过其安装文档来安装 Web 服务器。 如果要使用的 Web 服务器具有针对 Sun Cluster 的高可用性代理,请安装该版本。

检验 BEA WebLogic Server 的安装和配置

本节包含检验 BEA WebLogic Server 的安装和配置所需的过程。

如何检验 BEA WebLogic Server 的安装和配置

请使用此过程来检验 BEA WebLogic Server 管理服务器、BEA WebLogic 受管理服务器和数据库的安装和配置。 此过程不检验您的应用程序是否具有高可用性,因为您尚未安装数据服务。


注意:

以下步骤适用于简单配置中介绍的配置。 如果要规划其他配置,则必须对 BEA WebLogic Server 进行相应的配置。


  1. 检验在 RG1 和 RG2 中配置的 logical_-host-1logical-host-2 在群集 cluster-node1 上是否处于联机状态。

  2. 如果要使用数据库,请检验数据库是否正在运行。

  3. 转到包含在安装和配置 BEA WebLogic Server 应用程序 一节中配置的管理服务器和受管理服务器 START 脚本的目录。

  4. 通过运行管理服务器 START 脚本来启动管理服务器。


    example:
    cluster-node1>cd /global/wls/user_projects/petstore
    cluster-node1>./startWebLogic.sh
    
  5. 成功启动管理服务器后,再启动受管理服务器。


    example:
    cluster-node1>cd /global/wls/user_projects/petstore
    cluster-node1>./startManagedWebLogic.sh
    
  6. 确保您可以从客户机成功地连接到 logical-host-1logical-host-2

  7. 检验管理服务器和受管理服务器在群集节点 1 上是否处于运行模式。

  8. 关闭管理服务器和受管理服务器。

  9. 将资源组 RG1 和 RG2 切换到群集节点 2。

    这将在群集节点 1 上关闭 logical-host-1logical-host-2,并使它们在群集节点 2 上运行。


    scswitch -z -g RG1 -h cluster-node2
    scswitch -z -g RG2 -h cluster-node2
    
  10. 在群集节点 2 上重复步骤 4步骤 5步骤 6

  11. 检验管理服务器和受管理服务器在群集节点 2 上是否处于运行模式。

  12. 如果客户机可以成功地连接到每个潜在主节点上的管理服务器和受管理服务器,则您已成功地将 BEA WebLogic Server 配置为可与 Sun Cluster HA for BEA WebLogic Server 一起使用。

  13. 停止管理服务器和受管理服务器,并进行下一个会话以安装 Sun Cluster HA for BEA WebLogic Server。

安装 Sun Cluster HA for BEA WebLogic Server 软件包

如果未在 Sun Cluster 初始安装期间安装 Sun Cluster HA for BEA WebLogic Server 软件包,请执行此过程以安装该软件包。 在要安装 Sun Cluster HA for BEA WebLogic Server 软件包的每个群集节点上执行此过程。 必需使用 Sun Java Enterprise System Accessory CD Volume 3 才能完成此过程。

如果要同时安装多个数据服务,请执行Sun Cluster 软件安装指南(适用于 Solaris OS)》的“安装软件”中的过程。

请使用以下安装工具之一来安装 Sun Cluster HA for BEA WebLogic Server 软件包:


注意:

在早于 Sun Cluster 3.1 数据服务 10/03 的发行版中提供 Web Start 程序。


如何使用 Web Start 程序安装 Sun Cluster HA for BEA WebLogic Server 软件包

您可以使用命令行界面 (CLI) 或图形用户界面 (GUI) 运行 Web Start 程序。 CLI 和 GUI 中指令的内容和顺序类似。 有关 Web Start 程序的详细信息,请参见installer(1M) 手册页。

  1. 在要安装 Sun Cluster HA for BEA WebLogic Server 软件包的群集节点上成为超级用户。

  2. (可选的) 如果要使用 GUI 运行 Web Start 程序,请确保已设置 DISPLAY 环境变量。

  3. 将 Sun Java Enterprise System Accessory CD Volume 3 放入 CD-ROM 驱动器。

    如果卷管理守护程序 vold( 1M) 正在运行并被配置为管理 CD-ROM 设备,它将在 /cdrom/cdrom0 目录中自动装载 CD-ROM。

  4. 更改到 CD-ROM 的 Sun Cluster HA for BEA WebLogic Server 组件目录。

    用于 Sun Cluster HA for BEA WebLogic Server 数据服务的 Web Start 程序位于此目录中。


    # cd /cdrom/cdrom0/\
    components/SunCluster_HA_BEA_WLS_3.1
    
  5. 启动 Web Start 程序。


    # ./installer
    
  6. 系统提示时,选择安装类型。

    • 要仅安装 C 语言环境,请选择“典型”。

    • 要安装其他语言环境,请选择“定制”。

  7. 按照屏幕上的说明在节点上安装 Sun Cluster HA for BEA WebLogic Server 软件包。

    完成安装后,Web Start 程序将提供安装摘要。 此摘要使您可以查看 Web Start 程序在安装期间创建的日志。 这些日志位于 /var/sadm/install/logs 目录中。

  8. 退出 Web Start 程序。

  9. 从 CD-ROM 驱动器中取出 Sun Java Enterprise System Accessory CD Volume 3。

    1. 为确保没有在使用 CD-ROM,请将目录更改为 CD-ROM 中的目录。

    2. 弹出 CD-ROM。


      # eject cdrom
      

如何使用 scinstall 公用程序安装 Sun Cluster HA for BEA WebLogic Server 软件包

  1. 将 Sun Java Enterprise System Accessory CD Volume 3 放入 CD-ROM 驱动器。

  2. 运行 scinstall 公用程序(不使用任何选项)。

    此步骤将以交互模式启动 scinstall 公用程序。

  3. 选择菜单选项“将新数据服务的支持添加到此群集节点”。

    scinstall 公用程序将提示您输入其他信息。

  4. 提供 Sun Java Enterprise System Accessory CD Volume 3 的路径。

    公用程序将此 CD-ROM 称为“数据服务 CD”。

  5. 指定要安装的数据服务。

    scinstall 公用程序将列出您选定的数据服务,并要求您确认选择。


    注意:

    scinstall 公用程序可能会显示一则说明此数据服务不受支持的错误消息。 请忽略此消息,并继续进行下一步。


  6. 退出 scinstall 公用程序。

  7. 从驱动器中取出 CD-ROM。

注册和配置 Sun Cluster HA for BEA WebLogic Server

本节包含配置 Sun Cluster HA for BEA WebLogic Server 所需的过程。

Sun Cluster HA for BEA WebLogic Server 扩展特性

请使用扩展特性中的扩展特性创建资源。 创建资源时,使用命令 scrgadm -x parameter-value 来配置扩展特性。 如果已经创建了资源,请使用用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“管理数据服务资源”中的过程来配置扩展特性。 您可以动态地更新某些扩展特性。 但是,只能在创建或禁用资源时更新其他扩展特性。 “可调”项表示何时可以更新各个特性。 有关所有 Sun Cluster 特性的详细信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“标准特性”

如何将 Sun Cluster HA for BEA WebLogic Server 注册和配置为故障转移数据服务

请使用此过程将 Sun Cluster HA for BEA WebLogic Server 配置为故障转移数据服务。 以下步骤假定您使用的是简单配置中介绍的配置,并且已按照安装和配置 BEA WebLogic Server 应用程序 中的介绍配置了 BEA WebLogic Serves。 这些步骤假定您已经创建了资源组 RG1 和 RG2,并且在这些资源组中还创建了 logical-host-1logical-host-2 资源。 有关创建逻辑主机名资源的过程,请参见如何准备节点 。 如果要规划其他配置,则必须对 BEA WebLogic Server 资源进行相应的配置。


注意:

启动 Sun Cluster HA for BEA WebLogic Server 之前,如果要使用数据库,请检查您的数据库是否可访问。


  1. 添加 BEA WebLogic Server 资源类型。


    # scrgadm -a -t SUNW.wls
    
  2. 在 RG1 资源组中创建 BEA WebLogic 管理服务器资源。


    # scrgadm -a -j admin-rs -t SUNW.wls -g RG1\
    -x Confdir_list=/global/bea/beahome/weblogic700\
    -x Server_url=http://logical-host-1:7001\
    -x Start_script=/global/bea/beahome/user_projects\
    /petstore/startWebLogic.sh
    

    注意:

    此配置不会启用顺序关闭。 Sun Cluster HA for BEA WebLogic Server STOP 方法将强制关闭 BEA WebLogic 管理服务器(终止进程)。 有关启用顺序关闭的配置,请参见创建将顺序关闭的资源。 有关详细信息,请参见STOP 方法


  3. 在 RG2 资源组中创建 BEA WebLogic 受管理服务器资源。


    # scrgadm -a -j managed-rs -t SUNW.wls -g RG2 \
    -x Confdir_list=/global/bea/beahome/weblogic700\
    -x Server_url=http://logical-host-2:7004\
    -x Start_script=/global/bea/beahome/user_projects\
    /petstore/startManagedWebLogic.sh
    

检验 Sun Cluster HA for BEA WebLogic Server 的安装和配置

本节包含检验您是否正确安装和配置了数据服务所需的过程。

如何检验 Sun Cluster HA for BEA WebLogic Server 的安装和配置

请使用此过程检验您是否正确安装和配置了 Sun Cluster HA for BEA WebLogic Server。

  1. 使 BEA WebLogic Server 资源组在群集中联机。


    # scswitch -z -g RG1 -h cluster-node1
    # scswitch -z -g RG2 -h cluster-node1
    

    BEA WebLogic 管理和受管理服务器在群集节点 1 上必须处于联机状态。

  2. 确保您可以从客户机成功地连接到 BEA WebLogic 服务器,并且管理服务器和受管理服务器均处于运行模式。

  3. 将资源组切换到群集节点 2。


    # scswitch -z -g RG1 -h cluster-node2
    # scswitch -z -g RG2 -h cluster-node2
    

    BEA WebLogic 管理和受管理的服务器均必须在群集节点 1 上处于脱机状态并且在群集节点 2 上处于联机状态。请确保 BEA WebLogic Server 在群集节点 1 上的进程已被停止。 因为未启用顺序关闭,所以 BEA WebLogic Server 进程将通过 Sun Cluster HA for BEA WebLogic Server STOP 方法终止,而不是被顺序关闭。 有关启用顺序关闭的配置,请参见创建将顺序关闭的资源。 有关启用顺序关闭的配置的详细信息,请参见STOP 方法

  4. 确保您可以从客户机成功地连接到 BEA WebLogic 服务器,并且管理服务器和受管理服务器均处于运行模式。


    注意:

    当 BEA WebLogic Server 在群集节点 1 上脱机,并在群集节点 2 上联机时,可能会丢失客户机会话。


  5. 在群集节点 2 上,终止管理服务器进程。

    故障监视器必须检测此情况,并重新启动管理服务器。

  6. 再次终止管理服务器进程。

    重试次数超过重试间隔内的重试次数后,管理服务器资源组将进行故障转移。

  7. 在群集节点 2 上,终止受管理服务器进程。

    故障监视器必须检测此情况,并重新启动受管理服务器。

  8. 再次终止受管理服务器进程。

    重试次数超过重试间隔内的重试次数后,受管理服务器资源组将进行故障转移。

    如果上述步骤均成功,则您已经正确地配置了 Sun Cluster HA for BEA WebLogic Server。


注意:

一旦 BEA WebLogic 管理和受管理服务器在 Sun Cluster 控制下运行,请勿手动或通过管理控制台启动或停止服务器。 如果需要对服务器执行维护,则必须先禁用其相关的资源。


替代 Sun Cluster HA for BEA WebLogic Server 配置

本章中的安装、注册和配置过程假定您安装的是简单配置中介绍的简单配置。 本节提供了其他可能的 Sun Cluster HA for BEA WebLogic Server 配置的示例。

创建简单的 BEA WebLogic Server 资源

此配置假定 START 脚本 startWebLogic.sh 可以在不使用任何脚本变量的情况下启动 BEA WebLogic Server。 启动 BEA WebLogic Server 所需的 usernamepassword 可以在此 START 脚本或 boot.properties 文件中进行配置。


# scrgadm -a -j bea-rs -t SUNW.wls- -g bea-rg\
-x Confdir_list=/global/bea/beahome/weblogic700\
-x Server_url=http://logical_host1:7001\
-x Start_script=/global/bea/beahome/user_projects/petstore/startWebLogic.sh

使用服务器名称变量创建资源

如果 BEA WebLogic Server START 脚本 startManagedWebLogic.sh 将受管理服务器名称用作变量,则可以设置扩展特性 Server_name。 可以使用 START 脚本 startManagedWebLogic.sh 启动若干个受管理服务器。 必须在 START 脚本中配置 ADMIN_URL。 要手动启动 BEA WebLogic Server,请使用以下命令。


cluster-node-1> cd /global/wls/user_projects/petstore
cluster-node-1> ./startManagedWebLogic.sh petstore1

要配置其 START 脚本采用服务器名称 petstore1 的 Sun Cluster HA for BEA WebLogic Server 资源,请使用以下命令。


# scrgadm -a -j bea-rs -t SUNW.wls -g bea-rg\
-x Confdir_list=/global/bea/beahome/weblogic700\
-x Server_url=http://logical_host1:7001\
-x Start_script=/global/bea/beahome/user_projects/petstore/startWebLogic.sh\
-x Server_name=petstore1

要配置将同一 START 脚本用于其他服务器 petstore2 的另一个 Sun Cluster HA for BEA WebLogic Server 资源,请使用以下命令。


# scrgadm -a -j bea-rs -t SUNW.wls -g bea-rg\
-x Confdir_list=/global/bea/beahome/weblogic700\
-x Server_url=http://logical_host1:7001\
-x Start_script=/global/bea/beahome/user_projects/petstore/startWebLogic.sh\
-x Server_name=petstore2

创建将顺序关闭的资源

Sun Cluster HA for BEA WebLogic Server STOP 方法的缺省设置将终止 BEA WebLogic Server 进程以关闭实例。 如果这种方法不合意,请将 Smooth_shutdown 扩展特性设置为 TRUE 以启用 BEA WebLogic Server 的顺序关闭。 如果启用了此扩展特性,则必须在 START 脚本中设置 WLS_USERWLS_PW。 如果这是安全性重要事项,则必须使 Sun Cluster HA for BEA WebLogic Server 执行缺省强制关闭(终止进程)。

要配置将顺序关闭的资源,请使用以下命令。


# scrgadm -a -j bea-rs -t SUNW.wls -g bea-rg\
-x Confdir_list=/global/bea/beahome/weblogic700\
-x Server_url=http://logical_host1:7001\
-x Start_script=/global/bea/beahome/user_projects/petstore/startWebLogic.sh\
-x Server_name=petstore1\
-x Smooth_shutdown=TRUE

创建将探测数据库的资源

Sun Cluster HA for BEA WebLogic Server 不探测数据库的运行状况。 如果数据库在 Sun Cluster HA for BEA WebLogic Server 启动时关闭,数据服务将无法启动。 如果需要 Sun Cluster HA for BEA WebLogic Server 探测数据库,则可以将您自己的数据库探测脚本作为扩展特性提供给 Sun Cluster HA for BEA WebLogic Server。 此数据库探测必须返回零(表示成功)或非零(表示失败)。

要使用 DB_probe 脚本扩展特性集配置资源,请使用以下命令。


# scrgadm -a -j bea-rs -t SUNW.wls -g bea-rg\
-x Confdir_list=/global/bea/beahome/weblogic700\
-x Server_url=http://logical_host1:7001\
-x Start_script=/global/bea/beahome/user_projects/petstore/startWebLogic.sh\
-x Server_name=petstore1\
-x Smooth_shtudown=TRUE\
-x DB_probe_script=/global/bea/script/db_probe_script

创建监视 URI 的资源

要启用 Sun Cluster HA for BEA WebLogic Server 资源以监视由 BEA WebLogic Server(在资源中进行了配置)提供服务的 URI,请使用以下命令设置扩展特性 Monitor_uri_list


# scrgadm -a -j bea-rs -t SUNW.wls -g bea-rg\
-x Confdir_list=/global/bea/beahome/weblogic700\
-x Server_url=http://logical_host1:7001\
-x Start_script=/global/bea/beahome/user_projects/petstore/startWebLogic.sh\
-x Server_name=petstore1\
Smooth_shutdown=TRUE\
DB_probe_script=/global/bea/script/db_probe_script\
-x Monitor_uri_list=http://logical_host1:7001/petstore,http://logical_host1:7001/bookstore

Sun Cluster HA for BEA WebLogic Server 故障监视器的操作

本节介绍了 Sun Cluster HA for BEA WebLogic Server 故障监视器。

扩展特性

Sun Cluster HA for BEA WebLogic Server 使用以下扩展特性。 您可能可以调整这些扩展特性。 有关如何查看或设置扩展特性的详细信息,请参见Sun Cluster HA for BEA WebLogic Server 扩展特性

表 1–3 Sun Cluster HA for BEA WebLogic Server 扩展特性

名称/数据类型 

说明  

Confdir_list(字符串数组) 

BEA WebLogic Server 起始目录 $WL_HOME 的完整路径在此扩展特性中进行设置。


注意:

如果 setWLSEnv.shstartWLS.sh 不位于标准 $confdir_list/server/bin 位置,则必须创建从 $confdir_list/server/bin 目录到这些文件的链接。 如果未创建此链接,BEA WebLogic Server 资源创建将失败。


缺省值:

可调:创建时

Start_Script(字符串)  

脚本的完整路径,应使用它来启动 BEA WebLogic Server 实例(管理或受管理)。 此脚本通常和 config.xml 文件存在于域名目录下。 可以将单独的脚本或单个脚本配置为启动每个 BEA WebLogic Server。 有关详细信息,请参见配置要求

缺省值:

可调:创建时

Server_Url(字符串)  

BEA WebLogic Server 的完整 URL(包括用于连接服务器的协议),此资源被配置为启动。 通过在 URL 上执行 HTTP GET,探测方法使用此 URL 来检查服务器的运行状况。 必须将 URL 中的协议设置为 http。 完整的 URL 应为以下格式。


http://host:port

有关 Server_Url 的详细信息,请参见适用于您所使用版本的相关 BEA WebLogic Server 文档。 例如,对于 BEA WebLogic Server 7.0,该文档位于以下 Web 站点。


http://e-docs.bea/com/wls/docs70/adminguide
/startstop.html#1161188

确保 server_urlmonitor_uri_list 中使用的主机名是可解析的。 如果使用全限定域名 (FQDN),则必须启用 DNS 并且 /etc/nsswitch.conf 必须具有正确的项,以解析使用 DNS 的主机名。

缺省值:

可调:创建时

Monitor_Uri_List(字符串)  

单个 URI 或用逗号分隔的 URI 列表。通过在 URI 上执行 HTTP GET,故障监视器可以使用单个 URI 或 URI 列表来测试 BEA WebLogic Server 的功能。 Server_Url 扩展特性适用于对主机名和端口的简单探测。 通过检索 Java Servlet 或者使 WLS 运行应用程序并返回 HTTP 服务器代码,可以使用此扩展特性探测 WLS 功能。 如果 HTTP 服务器返回的代码是 500(内部服务器错误)或者如果连接失败,探测将采取操作。 有关详细信息,请参见探测方法。

确保 server_urlmonitor_uri_list 中使用的主机名是可解析的。 如果使用全限定域名 (FQDN),则必须启用 DNS 并且 /etc/nsswitch.conf 必须具有正确的项,以解析使用 DNS 的主机名。

缺省值:

可调: 任何时候。

Server_name(字符串) 

通过将受管理服务器名称作为变量传送到启动脚本,可以使用单个 START 脚本启动所有受管理服务器。 如果代理启动方法必须将服务器名称作为变量传送到 START 脚本,则应在此扩展特性中配置受管理服务器名称。 

缺省值:

可调: 任何时候。

DB_Probe_Script(字符串)  

可以使用此扩展特性设置数据库探测脚本的完整路径。 HA-WLS 探测方法仅探测 WLS 实例。 如果管理员还需要 HA_WLS 探测 DB,则可以使用此扩展特性提供数据库探测脚本。 此探测脚本必须返回 0(表示成功)。 仅当此数据库探测返回成功时,才会启动 BEA WebLogic Server。 如果 HA-WLS 探测在 WLS 实例中检测到失败并且设置了此扩展特性,则仅当数据库探测成功时,HA-WLS 探测才会采取措施。 有关详细信息,请参见探测算法和功能

缺省值:

可调: 任何时候。

Smooth_shutdown 

这是要使用 WebLogic.Admin 类启用顺序关闭的扩展特性。 在尝试终止 WLS 进程之前,如果希望执行顺序关闭,则必须将此扩展特性设置为 TRUE。 如果此扩展特性为 TRUE,则必须在 start_script(而不是 boot.properties)中设置 WLS_USERWLS_PW

如果以下所有情况都适用,请将此扩展特性设置为 TRUE。

  • start_script 中设置 usernamepassword 无关紧要

  • 希望进行顺序关闭而不是缺省关闭(终止进程)

  • 以下情况无关紧要:如果代理 STOP 方法从 START 脚本读取用户名和口令,并将其传送到 java weblogic.Admin 命令

缺省值: False

可调:任何时候。

探测算法和功能

故障监视器可以检测失败并采取措施。 如果监视器在 BEA WebLogic Server 中检测到失败,它先重新启动 BEA WebLogic Server。 如果 BEA WebLogic Server 在特定时间窗口(可由管理员配置)中失败了特定次数(可由管理员配置),则包含 BEA WebLogic Server 的资源组将被故障转移到另一个继续存在的群集节点并重新启动。

缺省情况下,故障监视器方法将探测在扩展特性 Server_url 中设置的服务器 URL。 探测将连接到主机名和端口,然后在 URL 上执行 HTTP GET 请求。 如果连接失败,这将被视为是完全失败,包含 BEA WebLogic Server 的资源组将重新启动,或故障转移到另一个继续存在的群集节点并重新启动。 如果连接成功,但 http 响应代码为 500(内部服务器错误),这还将被视为是完全失败,资源组将重新启动或进行故障转移。 所有其他 http 响应代码均被视为是成功。

如果设置了 monitor_uri_list 扩展特性,探测方法将连接到在列表中包含的 URI,并在失败时采取措施。 探测将在指定的一个或多个 URI 上执行 HTTP GET

如果探测检测到 BEA WebLogic Server 实例的完全失败(URL 或 URI 探测),并且在扩展特性 db_probe_script 中指定了数据库探测脚本,则探测方法将先探测数据库,然后再对 BEA WebLogic Server 资源采取措施。 如果数据库探测脚本返回成功(数据库正在运行),将对 BEA WebLogic Server 资源采取措施。 如果数据库探测脚本返回失败(数据库已关闭),则在数据库运行之前,BEA WebLogic Server 探测不会采取任何措施(重新启动或故障转换)。

START 方法

启动在资源中配置的 BEA WebLogic Server 之前,将先验证 BEA WebLogic Server 配置和资源扩展特性。 如果设置了 db_probe_script 扩展特性,将通过在扩展特性中调用脚本集来探测数据库。 如果数据库正在运行,将通过调用在 pmf 下的扩展特性 Start_script 中配置的 START 脚本来启动 BEA WebLogic Server。 如果数据库已关闭,START 方法将返回成功,并使探测方法可以处理 BEA WebLogic Server 的启动。 探测方法将等待,直到数据库运行才启动 BEA WebLogic Server,如探测算法和功能 中所述。

启动 pmf 下的 START 脚本后,START 方法将等待,直到 BEA WebLogic Server 处于运行模式,然后再将 START 方法声明为成功。 在等待 BEA WebLogic Server 启动时,探测方法将尝试连接到服务器以检查其是否在运行。 启动过程中,在控制台上将显示一些消息。 在 BEA WebLogic Server 完全启动之前,将不断显示消息“无法连接到 logical-host-1 和端口 7001: 连接被拒绝”。 BEA WebLogic Server 处于运行模式后,START 方法会将状态设置为“已成功启动”。

STOP 方法

STOP 方法可以停止在资源中配置的 BEA WebLogic Server。 缺省情况下,STOP 方法通过向 BEA WebLogic 进程发送 SIGKILL 来终止 BEA WebLogic Server。 如果将 smooth_shutdown 扩展特性设置为 TRUE,STOP 方法将尝试通过运行以下命令来停止 BEA WebLogic 实例


java weblogic.Admin -url hostname:port -username $WLS_USER 
-password $WLS_PW SHUTDOWN

如果此命令失败,将通过使用 SIGKILL 来关闭 BEA WebLogic Server。 即使命令成功,STOP 方法也会发送 SIGKILL 以确保 BEA WebLogic 进程已停止。

如果将 smooth_shutdown 扩展特性设置为 TRUE,请确保已在 BEA WebLogic Server START 脚本中设置 WLS_USERWLS_PW。 将 Smooth_shutdown 设置为 TRUE 后,除非再次将扩展特性设置为 FALSE,否则不能从 START 脚本中删除 WLS_USERWLS_PW