Sun Cluster 数据服务开发者指南(适用于 Solaris OS)

第 9 章 SunPlex Agent Builder

本章介绍了 SunPlex Agent Builder 和 Agent Builder 的 Cluster Agent 模块。两种工具均可以自动创建在资源组管理器 (Resource Group Manager, RGM) 的控制下运行的资源类型或数据服务。资源类型是包裹在应用程序外围的封装程序,使应用程序可以在 RGM 的控制下运行于群集环境中。

本章包括以下主题:

Agent Builder 概述

Agent Builder 提供了图形用户界面 (GUI),用于指定关于要创建的应用程序和要创建资源类型的种类的信息。Agent Builder 支持网络可识别的应用程序和非网络可识别的应用程序。网络可识别的应用程序使用网络与客户机通信。非网络可识别的应用程序是独立的应用程序。


注 –

如果无法访问 Agent Builder 的 GUI 版本,可以通过命令行界面访问 Agent Builder。请参见使用 Agent Builder 的命令行版本的方法


根据您指定的信息,Agent Builder 将生成以下软件:

使用 Agent Builder,您还可以为具有多个独立进程树(进程监视工具 [PMF] 必须对每个进程树分别进行监视和重新启动)的应用程序生成资源类型。

Agent Builder 使用前须知

使用 Agent Builder 之前,需要了解如何创建具有多个独立进程树的资源类型。

Agent Builder 可以为具有一个以上独立进程树的应用程序创建资源类型。说进程树是独立的是因为 PMF 分别监视和启动每个进程树。PMF 使用每个进程树自己的标记启动它们。


注 –

只有在指定生成的源代码为 C 或 GDS 时,才可以使用 Agent Builder 创建具有多个独立的进程树的资源类型。对于 Korn shell,不能使用 Agent Builder 创建上述资源类型。要针对 Korn shell 创建上述资源类型,必须手动写入代码。


在基本应用程序具有多个独立的进程树的情况下,不能通过仅指定一个命令行来启动该应用程序,而是必须创建一个文本文件,并在每一行中指定指向用来启动一个应用程序进程树的命令的完整路径。此文件不能包含空行。需要在 Agent Builder“配置”屏幕上的“启动命令”文本字段中指定此文本文件。

确保此文件不具有执行权限,从而使 Agent Builder 可以识别此文件。此文件的用途是从包含多个命令的单一可执行脚本启动多个进程树。如果此文本文件具有执行权限,则出现在群集上的资源不会带有任何问题或错误。但是,将在一个 PMF 标记下启动所有命令。结果是 PMF 不能分别监视和重新启动每个进程树。

使用 Agent Builder

本节介绍了如何使用 Agent Builder。此外,本节还包括使用 Agent Builder 之前您必须完成的任务。本节还介绍了在生成资源类型代码之后充分利用 Agent Builder 的方法。

包括以下主题:

分析应用程序

使用 Agent Builder 之前,必须确定要实现高可用性或可伸缩性的应用程序是否满足所需条件。Agent Builder 无法执行仅基于应用程序的运行时特性的分析。分析应用程序的适用性提供了关于此主题的更多信息。

Agent Builder 并不总是能够为应用程序创建完整的资源类型。但是,多数情况下,Agent Builder 至少可以提供部分解决方案。例如,更复杂的应用程序可能需要 Agent Builder 在默认情况下不生成的其他代码。其他代码的示例包括添加其他属性的验证检查的代码,或调谐 Agent Builder 不显示的参数的代码。在这些情况下,您必须更改所生成的源代码或 RTR 文件。Agent Builder 正是提供了这种灵活性。

Agent Builder 将注释置于生成的源代码中的特定点处,您可以在此处添加您自己的资源类型代码。更改源代码之后,您可以使用 Agent Builder 生成的 make 程序的描述文件重新编译该源代码并重新生成资源类型软件包。

即使在整个编写资源类型代码的过程中都没有使用 Agent Builder 生成的任何代码,您也可以使用 Agent Builder 提供的 make 程序的描述文件和结构为您的资源类型创建 Solaris 软件包。

安装和配置 Agent Builder

Agent Builder 不需要专门进行安装。SUNWscdev 软件包中包含 Agent Builder,默认情况下,安装 Sun Cluster 软件时安装此软件包。《Sun Cluster 软件安装指南(适用于 Solaris OS)》中介绍了这方面的更多信息。

使用 Agent Builder 之前,请检验是否满足以下要求:


注 –

除了标准 cc 编译器,您还可以在 Agent Builder 中使用其他编译器。要使用其他编译器,请在 $PATH 中将符号链接 cc 更改为其他编译器的符号链接,例如 gcc。或者,将 make 程序的描述文件中的编译器定义(当前为 CC=cc)更改为其他编译器的完整路径。例如,在 Agent Builder 生成的 make 程序的描述文件中,将 CC=cc 更改为 CC=pathname/gcc。此种情况下,您不能直接运行 Agent Builder。而必须使用 makemake pkg 命令来生成数据服务代码和软件包。


Agent Builder 屏幕

Agent Builder 是一个包含两个步骤的向导,每个步骤都有对应的屏幕。Agent Builder 提供了以下两个屏幕,用来指导您完成创建新资源类型的过程:

  1. “创建”屏幕。需要在此屏幕上提供关于要创建的资源类型的基本信息,例如其名称和生成的文件的工作目录。工作目录是您创建和配置资源类型模板的位置。还可以指定以下信息:

    • 要创建的资源种类(可伸缩或故障转移)

    • 基本应用程序是否为网络可识别(即,应用程序是否使用网络与其客户机进行通信)的应用程序

    • 要生成的代码的类型(C、Korn shell [ksh] 或 GDS)

    有关 GDS 的信息,请参见第 10 章,普通数据服务。您必须在此屏幕上提供所有信息并选择“创建”以生成相应的输出。然后,您就可以看到“配置”屏幕。

  2. “配置”屏幕。在此屏幕上,必须指定可以传送到任何 UNIX shell 以启动基本应用程序的完整命令行。您还可以提供停止和探测应用程序的命令(可选操作)。如果您尚未指定这两个命令,则生成的输出将使用信号来停止应用程序并提供默认探测机制。有关探测命令的说明,请参见使用“配置”屏幕。通过“配置”屏幕还可以更改以下三个命令中每个命令的超时值:启动、停止、探测。

启动 Agent Builder


注 –

如果无法访问 Agent Builder 的 GUI 版本,可以通过命令行界面访问 Agent Builder。请参见使用 Agent Builder 的命令行版本的方法


如果从现有资源类型的工作目录启动 Agent Builder,则 Agent Builder 将以现有资源类型的值初始化“创建”和“配置”屏幕。

通过键入以下命令启动 Agent Builder:


% /usr/cluster/bin/scdsbuilder

将显示“创建”屏幕。

图 9–1 Agent Builder 的“创建”屏幕

标题为“SunPlex Agent Builder”的对话框,显示了 Agent Builder 的主屏幕

浏览 Agent Builder

可以通过执行以下操作在“创建”和“配置”屏幕上输入信息:

使用每个屏幕底部的各个按钮,您可以分别完成结束任务、进入上一屏或下一屏或退出 Agent Builder 的操作。Agent Builder 将在必要时亮显或灰显这些按钮。

例如,完成“创建”屏幕上的各个字段并选择所需选项后,如果单击屏幕底部的“创建”按钮,则“上一步”和“下一步”按钮将灰显,因为不存在上一个屏幕,而且在您完成此步骤之前也不能进入下一步。

屏幕底部上显示了“创建”、“上一步”、“下一步”和“取消”命令的面板

Agent Builder 将在屏幕底部的“输出记录”区域中显示进度消息。Agent Builder 完成此步骤后,它将显示成功消息或警告消息。将突出显示“下一步”,或如果此屏幕是最后一屏,则仅突出显示“取消”。

您可以随时单击“取消”以退出 Agent Builder。

“浏览”命令

您可以在某些 Agent Builder 字段中键入信息。而其他字段则需要单击“浏览”以浏览目录结构并选择文件或目录。

“浏览”命令

单击“浏览”时,将显示一个与以下屏幕相似的屏幕。

显示文件列表的“浏览”屏幕

双击某个文件夹以打开该文件夹。当将光标移动到某个文件上时,该文件的名称将显示在“文件名”字段中。在找到所需文件并将光标移动到该文件上后,单击“选择”。


注 –

如果正在浏览以查找目录,请将光标移动到所需的目录上,然后单击“打开”。如果该目录不包含子目录,则 Agent Builder 将关闭该浏览窗口并将已将光标移至其上的目录的名称放置在相应字段中。如果该目录具有子目录,请单击“关闭”关闭浏览窗口并重新显示上一屏。Agent Builder 将把已将光标移至其上的目录的名称放置在相应字段中。


“浏览”屏幕右上角的图标的作用如下:

图标 

目的 

外观为向上箭头的图标

此图标可使您在目录树中向上移动一级。 

外观为房子的图标

此图标可使您返回主文件夹。 

外观为新文件夹的图标

此图标可用来在当前选定文件夹下创建新文件夹。 

用来更改视图的图标

此图标用于以后在不同视图之间进行切换。 

Agent Builder 菜单

Agent Builder 提供了“文件”和“编辑”下拉式菜单。

Agent Builder “文件”菜单

“文件”菜单包含以下两个选项:

Agent Builder “编辑”菜单

“编辑”菜单包含以下两个选项:

使用“创建”屏幕

创建资源类型的第一个步骤是完成“创建”屏幕(即启动 Agent Builder 后显示的屏幕)上的各项内容。下图显示键入了信息后的“创建”屏幕。

图 9–2 键入信息后的 Agent Builder“创建”屏幕

显示键入信息后的“创建”屏幕的对话框

“创建”屏幕中包含以下字段、单选按钮和复选框:


注 –

如果 $PATH 变量中不包含 cc 编译器,则 Agent Builder 将灰显 C 单选按钮并允许您选择 ksh 单选按钮。要指定其他编译器,请参见安装和配置 Agent Builder结尾处的注释。


指定所需信息后,请单击“创建”。屏幕底部的“输出记录”区域用来显示 Agent Builder 执行的操作。您可以从“编辑”菜单中选择“保存输出日志”来保存输出日志中的信息。

完成操作后,Agent Builder 将显示一条成功消息或警告消息。


注 –

虽然生成完整资源类型的过程只有两步,但是您也可以在完成第一步(创建)之后退出 Agent Builder,您已指定的信息或 Agent Builder 已完成的工作并不会丢失。请参见重复使用使用 Agent Builder 创建的代码


使用“配置”屏幕

Agent Builder 完成资源类型的创建后,如果您在“创建”屏幕上单击“下一步”,将显示如下图所示的“配置”屏幕。必须先创建资源类型才能访问“配置”屏幕。

图 9–3 Agent Builder 的“配置”屏幕

显示“配置”屏幕的对话框

“配置”屏幕上包含以下字段:

使用 Agent Builder 基于 Korn Shell 的 $hostnames 变量

对于许多应用程序(特别是网络可识别的应用程序),必须通过命令行将应用程序在其上侦听和响应用户请求的主机名传送至该应用程序。多数情况下,主机名是必须在“配置”屏幕上为目标资源类型的启动、停止和探测命令指定的主机名参数。但是,应用程序侦听时所在的主机的主机名是特定于群集的。只有当资源在群集上运行时才能确定主机名。Agent Builder 生成资源类型代码时无法确定主机名。

为了解决此问题,Agent Builder 提供了 $hostnames 变量,您可以在命令行为启动、停止和探测命令指定此变量。


注 –

$hostnames 变量只适用于基于 Korn shell 的服务。不支持对基于 C 和 GDS 的服务使用 $hostnames 变量。


指定 $hostnames 变量的方法就像指定实际主机名一样,例如:


% /opt/network_aware/echo_server -p port-no -l $hostnames

当目标资源类型的资源在群集上运行时,将用为资源配置的 LogicalHostnameSharedAddress 主机名替换 $hostnames 变量的值。为资源配置的主机名位于资源的 Network_resources_used 资源属性中。

如果配置的 Network_resources_used 属性具有多个主机名,则 $hostnames 变量将包含所有主机名,并用逗号将其隔开。

使用属性变量

您还可以通过使用属性变量,从 RGM 框架恢复选定 Sun Cluster 资源类型、资源和资源组属性的值。Agent Builder 将为属性变量扫描启动、探测或停止命令字符串,并在执行命令之前用这些值替换变量。


注 –

基于 Korn shell 的服务不支持使用属性变量。


属性变量列表

本节列出了可以使用的属性变量。附录 A,标准属性中介绍了 Sun Cluster 的资源类型、资源和资源组属性。

资源属性变量

资源类型属性变量

资源组属性变量

属性变量的语法

您可以在属性名称前面加百分号 (%) 来表示属性变量,如下例所示:

/opt/network_aware/echo_server -t %RS_STOP_TIMEOUT -n %RG_NODELIST

根据上面的示例,Agent Builder 可以解释这些属性变量,并使用以下值启动 echo_server 脚本:

/opt/network_aware/echo_server -t 300 -n phys-node-1,phys-node-2,phys-node-3

Agent Builder 替换属性变量的方式

Agent Builder 将按如下方式解释属性变量的类型:

重复使用使用 Agent Builder 创建的代码

Agent Builder 使您可以通过以下方式重复使用已完成的工作:

Procedure克隆现有的资源类型的方法

请按照以下步骤克隆由 Agent Builder 生成的现有资源类型。

步骤
  1. 使用以下方法之一可将现有资源类型装入到 Agent Builder 中:

    • 在使用 Agent Builder 创建的现有资源类型的工作目录中启动 Agent Builder。确保工作目录中包含 rtconfig 文件。Agent Builder 将在“创建”和“配置”屏幕装入该资源类型的值。

    • 使用“文件”下拉式菜单中的“装入资源类型”选项。

  2. 在“创建”屏幕上更改工作目录。

    必须使用“浏览”按钮来选择目录。仅键入新目录的名称是不够的。选择目录后,Agent Builder 将重新启用“创建”按钮。

  3. 对现有资源类型进行所需更改。

    您可能更改生成该资源类型的代码的类型。例如,如果您最初创建了资源类型的 Korn shell 版本,却发现超时并需要 C 版本,则可以进行以下操作:

    • 装入现有的 Korn shell 资源类型。

    • 将输出语言更改为 C。

    • 单击“创建”以使 Agent Builder 生成该资源类型的 C 版本。

  4. 创建克隆的资源类型。

    1. 单击“创建”按钮创建该资源类型。

    2. 单击“下一步”将显示“配置”屏幕。

    3. 单击“配置”以配置资源类型,然后单击“取消”完成。

编辑已生成的源代码

为了简化创建资源类型的过程,Agent Builder 限制您可以指定的信息量,从而限制了生成的资源类型的范围。因此,要添加更多的复杂功能,您需要修改已生成的源代码或 RTR 文件。其他功能的示例包括添加其他属性的验证检查的代码,或调谐 Agent Builder 不显示的参数的代码。

源文件位于 install-directory/rt-name/src 目录中。Agent Builder 将注释嵌入在源代码中,您可以在这些注释中添加代码。这些注释的格式如下(针对 C 代码):

/* User added code -- BEGIN vvvvvvvvvvvvvvv */
/* User added code -- END   ^^^^^^^^^^^^^^^ */

注 –

这些注释与 Korn shell 源代码中的相同,除了用注释标记 (#) 表示注释的开始。


例如,rt-name.h 声明了不同程序使用的所有实用程序函数。声明列表的结尾处是注释,通过这些注释您可以声明已添加到代码中的其他函数。

Agent Builder 还可以使用相应的目标在 install_directory/rt_name/src 目录中生成 make 程序的描述文件。使用 make 命令重新编译源代码。使用 make pkg 命令重新生成资源类型软件包。

RTR 文件位于 install-directory/rt-name/etc 目录中。您可以使用标准的文本编辑器编辑 RTR 文件。有关 RTR 文件的更多信息,请参见设置资源和资源类型属性。有关属性的信息,请参见附录 A,标准属性

Procedure使用 Agent Builder 的命令行版本的方法

Agent Builder 的命令行版本的使用过程与 GUI 相同。但是,与在 GUI 中键入信息不同,您需要把参数传送到 scdscreatescdsconfig 命令。有关更多信息,请参见 scdscreate(1HA)scdsconfig(1HA) 手册页。

请按照以下步骤使用 Agent Builder 的命令行版本。

步骤
  1. 使用 scdscreate 来创建 Sun Cluster 资源类型模板,以便使应用程序具有高可用性和可伸缩性。

  2. 使用 scdsconfig 配置您用 scdscreate 创建的资源类型模板。

    您可以指定属性变量。使用属性变量中介绍了属性变量。

  3. 将目录更改为工作目录中的 pkg 子目录。

  4. 使用 pkgadd 命令来安装用 scdscreate 创建的软件包。

    • 对于区环境中的 Solaris 10 OS,请做为全局区域中的全局管理员键入以下命令:


      # pkgadd -G -d . package-name
      

      如果软件包的内容不影响全局区域中与非全局区域共享的任何区域,则指定的软件包将被添加到全局区域中。

    • 对于任何其他版本的 Solaris OS 或非区环境中的 Solaris 10 OS,请键入以下命令:


      # pkgadd -d . package-name
      
  5. (可选的)编辑已生成的源代码

  6. 运行启动脚本。

Agent Builder 创建的目录结构

Agent Builder 将创建一个目录结构,用于存储它为目标资源类型生成的所有文件。在“创建”屏幕上可以指定工作目录。必须为要开发的所有其他资源类型分别指定它们的安装目录。在工作目录下,Agent Builder 将创建一个子目录,其名称由供应商名称和资源类型名称串联而成。例如,如果您将 SUNW 指定为供应商的名称并创建了一个名为 ftp 的资源类型,则 Agent Builder 将在工作目录下创建一个名为 SUNWftp 的目录。

在此子目录下,Agent Builder 创建下表中列出的目录并在它们中分别放入应放入的内容。

目录名称 

内容 

bin

如果用 C 输出,则将包含编译源文件得到的二进制文件。对于 Korn shell 输出,包含的文件与 src 目录中的文件相同。

etc

包含 RTR 文件。Agent Builder 并置供应商名称和应用程序名称,两者之间用句点 (.) 进行分隔,从而构成 RTR 文件名。例如,如果供应商名为 SUNW 同时资源类型的名称为 ftp,则 RTR 文件的名称为 SUNW.ftp

man

将包含 startstopremove 实用程序脚本的定制手册页,例如 startftp(1M)、stopftp(1M) 和 removeftp(1M)。

 

要查看这些手册页,请在指定相应路径时使用 man -M 选项。例如:


% man -M install-directory/SUNWftp/man removeftp

pkg

包含最终的 Solaris 软件包,其中包括已创建的数据服务。 

src

包含 Agent Builder 生成的源文件。 

util

包含 Agent Builder 生成的 startstopremove 实用程序脚本。请参见Sun Agent Builder 创建的实用程序脚本和手册页。Agent Builder 将应用程序名称附加到以上各个脚本名称上;例如,startftpstopftpremoveftp

Agent Builder 的输出

源文件和二进制文件

用来管理群集上的资源组并最终管理资源的资源组管理器 (RGM)。RGM 基于回调模型进行工作。特定事件发生时(例如节点故障),RGM 将为在受影响的节点上运行的每个资源调用资源类型的方法。例如,RGM 将调用 Stop 方法来停止在受影响节点上运行的资源,然后再调用该资源的 Start 方法以在其它节点上启动该资源。有关此模型的更多信息,请参见资源组管理器模型回调方法rt_callbacks(1HA) 手册页。

为了支持该模型,Agent Builder 将在 install-directory/rt-name/bin 目录中生成八个可执行的 C 程序或 Korn shell 脚本。这些程序或 shell 脚本做为回调方法。


注 –

严格地说,实现故障监视器的 rt-name_probe 程序不是回调程序。RGM 并不直接调用 rt-name_probe,而是调用 rt-name_monitor_startrt-name_monitor_stop。然后这两种方法通过调用 rt-name_probe 来启动和停止故障监视器。


下面是 Agent Builder 生成的八种方法:

有关每种方法的特定信息,请参见 rt_callbacks(1HA) 手册页。

install-directory/rt-name/src 目录(C 输出)中,Agent Builder 将生成以下文件:

Agent Builder 将 rt-name.o 文件链接至每个方法 .o 文件以在 install-directory/rt-name/bin 目录中创建可执行文件。

对于 Korn shell 输出,install-directory/rt-name/bininstall-directory/rt-name/src 目录相同。每个目录都包含八个可执行脚本,分别对应七个回调方法和 Probe 方法。


注 –

Korn shell 输出包括两个已编译的实用程序,gettimegethostnames。特殊回调方法需要使用这些方法来获取时间和进行探测。


您可以编辑源代码并运行 make 命令来重新编译代码,并在完成时运行 make pkg 命令以生成新的软件包。为支持对源代码进行更改,Agent Builder 在源代码中的恰当位置嵌入了注释,您可以在这些注释中添加代码。请参见编辑已生成的源代码

Sun Agent Builder 创建的实用程序脚本和手册页

生成资源类型并将其软件包安装到群集上之后,您还必须获取在群集上运行的该资源类型的实例(资源)。通常,可以使用管理命令或 SunPlex Manager 获取实例。但是为了方便起见,Agent Builder 将生成用于启动目标资源类型的资源的定制实用程序脚本,还将生成用于停止和删除该资源的脚本。位于 install-directory/rt-name/util 目录中的这三个脚本具有以下作用:


注 –

您只能使用与启动脚本启动的资源相对应的删除脚本,因为这些脚本使用了内部约定来命名资源和资源组。


Agent Builder 通过将应用程序名称附加到脚本名称来命名这些脚本。例如,如果应用程序名为 ftp,则脚本名分别为 startftpstopftpremoveftp

install-directory/rt-name/man/man1m 中,Agent Builder 为每个实用程序脚本都提供了手册页。启动这些脚本之前,应阅读这些手册页,由于它们记录了需要传送给脚本的参数。

要查看这些手册页,请通过使用 -M 选项和 man 命令来指定此 man 目录的路径。例如,如果 SUNW 为供应商,ftp 为应用程序名,则键入以下命令以查看 startftp(1M) 手册页:


% man -M install-directory/SUNWftp/man startftp

手册页公用程序脚本也可供群集管理员使用。如果 Agent Builder 生成的软件包已安装在群集上,则实用程序脚本的手册页将位于 /opt/rt-name/man 目录中。例如,键入以下命令可以查看 startftp(1M) 手册页:


% man -M /opt/SUNWftp/man startftp

Agent Builder 创建的支持文件

Agent Builder 将支持文件(例如 pkginfopostinstallpostremovepreremove)置于 install-directory/rt-name/etc 目录中。此目录还包含资源类型注册 (RTR) 文件。RTR 文件将声明目标资源类型可用的资源和资源类型属性,并在群集中注册资源时初始化属性值。有关更多信息,请参见设置资源和资源类型属性。RTR 文件被命名为 vendor-name.resource-type-name,例如,SUNW.ftp

您可以在不重新编译源代码的情况下使用标准的文本编辑器编辑此文件并进行更改,但是,您必须使用 make pkg 命令重建软件包。

Agent Builder 创建的软件包目录

install-directory/rt-name/pkg 目录包含 Solaris 软件包。软件包的名称是供应商名和应用程序名的串联,例如 SUNWftp。在 install-directory/rt-name/src 中的 make 程序的描述文件支持新软件包的创建。例如,如果您对源文件进行了更改并重新编译了其代码,或对软件包实用程序脚本进行了更改,则可以使用 make pkg 命令创建新软件包。

如果您尝试从多个节点同时运行 pkgrm 命令来从群集中删除一个软件包,则该命令将失败。您可以采用以下两种方法之一来解决此问题:

如果由于在多个节点上尝试同时运行 pkgrm 而使该命令失败,请在一个节点上再次运行该命令。然后,在其余节点运行该命令。

rtconfig 文件

如果在工作目录中生成 C 或 Korn shell 源代码,则 Agent Builder 将生成名为 rtconfig 的配置文件。此文件包含您在“创建”和“配置”屏幕上指定的信息。如果从现有资源类型的工作目录启动 Agent Builder,则 Agent Builder 将读取 rtconfig 文件。Agent Builder 将把您为现有资源类型提供的信息填充到“创建”和“配置”屏幕中。如果您通过从“文件”下拉式菜单中选择“装入资源类型”来装入现有资源类型,则 Agent Builder 将以相似的方式进行工作。当克隆现有资源类型时,此功能非常有用。请参见重复使用使用 Agent Builder 创建的代码

Agent Builder 的 Cluster Agent 模块

Agent Builder 的 Cluster Agent 模块为 NetBeansTM 模块。此模块提供了 GUI,使用此 GUI 和 Sun Java Studio(以前的 Sun ONE Studio)产品可以为 Sun Cluster 软件创建资源类型。


注 –

Sun Java Studio 文档中包含有关如何设置、安装和使用 Sun Java Studio 产品的信息。可以在 http://wwws.sun.com/software/sundev/jde/documentation/index.html Web 站点找到此文档。


Procedure安装和设置 Cluster Agent 模块的方法

安装 Sun Cluster 软件时会同时安装 Cluster Agent 模块。Sun Cluster 安装工具将 Cluster Agent 模块文件 scdsbuilder.jar 置于 /usr/cluster/lib/scdsbuilder 中。要将 Cluster Agent 模块与 Sun Java Studio 软件配套使用,您需要创建指向此文件的符号链接。


注 –

在要运行 Cluster Agent 模块的系统上,必须已安装 Sun Cluster 和 Sun Java Studio 产品以及 Java 1.4,并确保可用。


步骤
  1. 允许所有用户或只有您能够使用 Cluster Agent 模块。

    • 要使所有用户均能使用该模块,您需要成为超级用户或与此相当的身份,然后在全局模块目录中创建符号链接。


      # cd /opt/s1studio/ee/modules
      # ln -s /usr/cluster/lib/scdsbuilder/scdsbuilder.jar
      

      注 –

      如果已将 Sun Java Studio 软件安装在 /opt/s1studio/ee 之外的目录,请用您所用目录的路径代替此目录路径。


    • 如果希望只有您自己可以使用该模块,请在您的 modules 子目录中创建符号链接。


      % cd ~your-home-dir/ffjuser40ee/modules
      % ln -s /usr/cluster/lib/scdsbuilder/scdsbuilder.jar
      
  2. 停止并重新启动 Sun Java Studio 软件。

Procedure启动 Cluster Agent 模块的方法

以下各个步骤介绍了如何从 Sun Java Studio 软件启动 Cluster Agent 模块。


注 –

Sun Java Studio 文档中包含有关如何设置、安装和使用 Sun Java Studio 产品的信息。可以在 http://wwws.sun.com/software/sundev/jde/documentation/index.html Web 站点找到此文档。


步骤
  1. 从 Sun Java Studio 的“文件”菜单中选择“新建”,或单击工具栏上相应的图标:

    在 Sun Java Studio 软件的工具栏上显示“新建”图标的图形

    将显示“新建向导”屏幕。

    显示“新建向导”屏幕的对话框
  2. 在“选择模板”窗格中,向下滚动(如果必要)并单击“其他”文件夹旁边的钥匙符号。

    显示“其它”文件夹的钥匙符号的内置图形

    将打开“其他”文件夹。

    显示扩展的“其他” 文件夹菜单的图形
  3. 从“其他”文件夹中选择 "Sun Cluster Agent Builder" 然后单击“下一步”。

    Sun Java Studio 的 Cluster Agent 模块将启动。将显示第一个“新建向导 - Sun Cluster Agent Builder”屏幕。

    显示第一个“新建向导 - Sun Cluster Agent Builder”屏幕的对话框

使用 Cluster Agent 模块

Cluster Agent 模块的使用方法与 Agent Builder 软件的使用方法相同,而且它们的界面也是相同的。例如,以下各图分别显示了 Agent Builder 软件的“创建”屏幕和 Cluster Agent 模块中的第一个“新建向导 - Sun Cluster Agent Builder”屏幕,它们包含有相同的字段和选项。

图 9–4 Agent Builder 软件中的“创建”屏幕

显示已输入信息的“创建”屏幕的对话框

图 9–5 Cluster Agent 模块中的“新建向导 - Sun Cluster Agent Builder”屏幕

显示已输入信息的“新建向导 - Sun Cluster Agent Builder”屏幕的对话框

Cluster Agent 模块和 Agent Builder 之间的区别

虽然 Cluster Agent 模块和 Agent Builder 很相似,但是两者之间仍然存在微小的区别: