用来管理群集上的资源组并最终管理资源的资源组管理器 (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_start 和 rt-name_monitor_stop。然后这两种方法通过调用 rt-name_probe 来启动和停止故障监视器。
下面是 Agent Builder 生成的八种方法:
rt-name_monitor_check
rt-name_monitor_start
rt-name_monitor_stop
rt-name_probe
rt-name_svc_start
rt-name_svc_stop
rt-name_update
rt-name_validate
有关每种方法的特定信息,请参见 rt_callbacks(1HA) 手册页。
在 install-directory/rt-name/src 目录(C 输出)中,Agent Builder 将生成以下文件:
头文件 (rt-name.h)
包含所有方法都通用的代码的源文件 (rt-name.c)
通用代码的对象文件 (rt-name.o)
每种方法的源文件 (*.c)
每种方法的对象文件 (*.o)
Agent Builder 将 rt-name.o 文件链接至每个方法 .o 文件以在 install-directory/rt-name/bin 目录中创建可执行文件。
对于 Korn shell 输出,install-directory/rt-name/bin 和 install-directory/rt-name/src 目录相同。每个目录都包含八个可执行脚本,分别对应七个回调方法和 Probe 方法。
Korn shell 输出包括两个已编译的实用程序,gettime 和 gethostnames。特殊回调方法需要使用这些方法来获取时间和进行探测。
您可以编辑源代码并运行 make 命令来重新编译代码,并在完成时运行 make pkg 命令以生成新的软件包。为支持对源代码进行更改,Agent Builder 在源代码中的恰当位置嵌入了注释,您可以在这些注释中添加代码。请参见编辑已生成的源代码。