Sun Cluster 框架使用回叫机制提供数据服务与 RGM 之间的通信。 该框架定义了一组回叫方法(包括变量和返回值)以及 RGM 调用每种方法的环境。
通过对一组单独的回叫方法进行编码并实现每种方法作为 RGM 可调用的控制程序,可以创建数据服务。 也就是说,数据服务包含的不是单个可执行文件,而是大量可执行脚本 (ksh) 或二进制文件 (C),每个脚本或二进制文件都可以直接由 RGM 调用。
回叫方法通过 RGM 在资源类型登记 (RTR) 文件中进行登记。 在 RTR 文件中,可以标识已为数据服务实现的每种方法的程序。 系统管理员在群集上登记数据服务时,RGM 将读取 RTR 文件,该文件将提供回叫程序的标识及其它信息。
资源类型唯一需要的回叫方法是 start 方法(Start 或 Prenet_start)和 stop 方法(Stop 或 Postnet_stop)。
控制和初始化方法
Start 和 Stop 分别用于启动和停止联机或脱机的组中的资源。
Init、Fini 和 Boot 分别用于执行资源上的初始化和终止代码。
管理支持方法
Validate 用于检验由管理操作设置的特性。
Update 用于更新联机资源的特性设置。
与网络相关的方法
Prenet_start 和 Postnet_stop 分别用于在将同一资源组中的网络地址配置为启用之前执行特殊的启动操作,或在将同一资源组中的网络地址配置为关闭之后执行特殊的关闭操作。
监视器控制方法
Monitor_start 和 Monitor_stop 启动或停止对某个资源的监视。
Monitor_check 用于在将资源组移至节点之前评估该节点的可靠性。
关于回叫方法的详细信息,请参阅第 4 章,资源管理 API 参考和 rt_callbacks (1HA) 手册页。 要获得数据服务样例中的回叫方法,另请参阅第 5 章,数据服务样例和第 8 章,DSDL 资源类型实现样例。