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

声明资源类型特性

群集管理员无法配置您在 RTR 文件中声明的资源类型特性。 这些特性将成为永久资源类型配置中的一部分。


注意:

资源类型特性 Installed_nodes 可由系统管理员配置。 实际上,此特性只能由系统管理员配置,而您无法在 RTR 文件中对其进行声明。


资源类型声明的语法为:


property_name = value;

注意:

RGM 认为特性名是不区分大小写的。 由 Sun 提供的 RTR 文件中的特性名称惯例是将名称的首字母大写,其余字母小写(方法名除外)。 方法名以及特性的属性中包含的都是大写字母。


以下是 RTR 文件中为 smpl 数据服务声明的资源类型:

# Sun Cluster Data Services Builder template version 1.0
# Registration information and resources for smpl
#
#NOTE: Keywords are case insensitive, i.e., you can use
#any capitalization style you prefer.
#
Resource_type = "smpl";
Vendor_id = SUNW;
RT_description = "Sample Service on Sun Cluster";

RT_version ="1.0"; 
API_version = 2;
Failover = TRUE;

Init_nodes = RG_PRIMARIES;

RT_basedir=/opt/SUNWsmpl/bin;

Start           =    smpl_svc_start;
Stop            =    smpl_svc_stop;

Validate        =    smpl_validate;
Update          =    smpl_update;

Monitor_start   =    smpl_monitor_start;
Monitor_stop    =    smpl_monitor_stop;
Monitor_check   =    smpl_monitor_check;

提示:

您必须将 Resource_type 特性声明为 RTR 文件中的第一项。 否则,资源类型的登记将失败。


第一组资源类型声明可提供有关资源类型的基本信息,如下所示:

Resource_typeVendor_id

提供资源类型的名称。 您可以仅使用 Resource_type 特性指定资源类型名称 (smpl),或在该特性前用 Vendor_id 作为前缀,前缀 与资源类型之间用“.”分隔 (SUNW.smpl),如样例中所示。 如果使用 Vendor_id,请将其设置为用来定义资源类型的公司的股票代号。 资源类型名称在群集中必须是唯一的。


注意:

按照惯例,资源类型名称 (Resource_typeVendor_id) 用作软件包名称。 尽管 RGM 没有强制要求进行限制,但因为软件包名称的字符数不能超过九个,因此将这两个特性的字符总数限制在九个或更少字符数以内不失为一种好方法。 另一方面,Agent Builder 将明确地根据该资源类型名称生成软件包名称,因此它要强制执行九个字符数限制。


Rt_version

用于标识数据服务样例的版本。

API_version

用于标识 API 的版本。 例如,API_version = 2 表明数据服务在 Sun Cluster 3.0 版本中运行。

Failover = TRUE

表明数据服务无法在可同时在多个节点上联机的资源组中运行,即指定了一个故障切换数据服务。 有关详细信息,请参阅将数据服务传送到群集

StartStopValidate

提供指向由 RGM 调用的各个回叫方法程序的路径。 这些路径是基于 RT_basedir 所指定的目录的相对路径。

其余的资源类型声明用于提供配置信息,如下所示:

Init_nodes = RG_PRIMARIES

指定 RGM 仅对可以控制数据服务的节点调用 InitBootFiniValidate 方法。 RG_PRIMARIES 指定的节点是安装了数据服务的所有节点的子集。 将值设置为 RT_INSTALLED_NODES 可指定 RGM 对安装有数据服务的所有节点调用这些方法。

RT_basedir

指向 /opt/SUNWsample/bin,作为指向完整相对路径(例如回叫方法路径)的目录路径。

StartStopValidate

提供指向由 RGM 调用的各个回叫方法程序的路径。 这些路径是基于 RT_basedir 所指定的目录的相对路径。