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

启动和停止数据服务

Start 方法用于执行在群集节点上启动数据服务所需的操作。通常,这些操作包括检索资源属性、查找应用程序特定的可执行文件和配置文件,以及使用正确的命令参数启动应用程序。

scds_initialize() 函数用于检索资源配置。Start 方法可以使用属性公用函数来检索特定属性(例如,Confdir_list,它标识用于应用程序启动的配置目录和文件)的值。

Start 方法可以调用 scds_pmf_start() 来启动在进程监视器工具 (PMF) 控制下的应用程序。PMF 使您可以指定要应用到进程的监视级别,它还提供了在失败的情况下重新启动进程的能力。有关使用 DSDL 实现的 Start 方法的示例,请参见xfnts_start 方法

Stop 方法必须是幂等的,这样即使在应用程序没在运行的节点上进行调用,Stop 方法也可以成功退出。如果 Stop 方法失败,将把正在停止的资源设置为 STOP_FAILED 状态,该状态可以导致群集执行硬重启。

要避免将资源置入 STOP_FAILED 状态,Stop 方法必须尽力停止资源。scds_pmf_stop() 函数用于阶段性尝试停止资源。此函数将先尝试使用 SIGTERM 信号停止资源,如果失败,则使用 SIGKILL 信号。有关更多信息,请参见 scds_pmf_stop(3HA) 手册页。