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

源文件和二进制文件

用来管理群集上的资源组并最终管理资源的资源组管理器 (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 在源代码中的恰当位置嵌入了注释,您可以在这些注释中添加代码。请参见编辑已生成的源代码