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

声明资源属性

与资源类型属性一样,资源属性也在 RTR 文件中声明。按照惯例,在 RTR 文件中资源属性声明位于资源类型声明之后。资源声明的语法是一组用花括号括起来的属性值对:

{
    attribute = value;
    attribute = value;
             .
             .
             .
    attribute = value;
}

对于 Sun Cluster 提供的资源属性(称为系统定义的属性),您可以在 RTR 文件中更改特定属性。例如,Sun Cluster 为每个回调方法的方法超时属性提供默认值。在 RTR 文件中,您可以指定各种缺省值。

您还可以使用一组由 Sun Cluster 提供的属性的属性,在 RTR 文件中定义新的资源属性(称为扩展属性)。资源特性属性中列出了用于更改和定义资源属性的属性。在 RTR 文件中,扩展属性声明位于系统定义的属性声明之后。

第一组系统定义的资源属性指定了回调方法的超时值。

...

# Resource property declarations appear as a list of bracketed
# entries after the resource type declarations. The property 
# name declaration must be the first attribute after the open
# curly bracket of a resource property entry.
#
# Set minimum and default for method timeouts.
{
        PROPERTY = Start_timeout;
        MIN=60;
        DEFAULT=300;
}

{
        PROPERTY = Stop_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Validate_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Update_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Monitor_Start_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Monitor_Stop_timeout;
        MIN=60;
        DEFAULT=300;
{
        PROPERTY = Monitor_Check_timeout;
        MIN=60;
        DEFAULT=300;
}

属性名称 (PROPERTY = value) 必须是每个资源属性声明的第一个属性。您可以在由 RTR 文件中属性的属性定义的限制内配置资源属性。例如,样例中每个方法超时的缺省值都是 300 秒。群集管理员可以更改此值。但是,由 MIN 属性指定的最小允许值是 60 秒。资源特性属性中包含资源属性的属性列表。

下一组资源属性用于定义在数据服务中有特定用法的属性。

{
        PROPERTY = Failover_mode;
        DEFAULT=SOFT;
        TUNABLE = ANYTIME;
}
{
        PROPERTY = Thorough_Probe_Interval;
        MIN=1;
        MAX=3600;
        DEFAULT=60;
        TUNABLE = ANYTIME;
}

# The number of retries to be done within a certain period before concluding
# that the application cannot be successfully started on this node.
{
        PROPERTY = Retry_count;
        MAX=10;
        DEFAULT=2;
        TUNABLE = ANYTIME; 
}

# Set Retry_interval as a multiple of 60 since it is converted from seconds
# to minutes, rounding up. For example, a value of 50 (seconds)
# is converted to 1 minute. Use this property to time the number of
# retries (Retry_count).
{
        PROPERTY = Retry_interval;
        MAX=3600;
        DEFAULT=300;
        TUNABLE = ANYTIME;
}

{
        PROPERTY = Network_resources_used;
        TUNABLE = WHEN_DISABLED;
        DEFAULT = "";
}
{
        PROPERTY = Scalable;
        DEFAULT = FALSE;
        TUNABLE = AT_CREATION;
}
{
        PROPERTY = Load_balancing_policy;
        DEFAULT = LB_WEIGHTED;
        TUNABLE = AT_CREATION;
}
{
        PROPERTY = Load_balancing_weights;
        DEFAULT = "";
        TUNABLE = ANYTIME;
}
{
        PROPERTY = Port_list;
        TUNABLE = ANYTIME;
        DEFAULT = ;
}

这些资源属性声明包含 TUNABLE 属性。该属性将限制在哪种情况下群集管理员可以更改与该属性相关的属性值。例如,值 AT_CREATION 表明群集管理员仅能在创建资源时指定值,并且以后无法更改此值。

对于这些属性中的大多数,您可以接受由 Agent Builder 生成的默认值,除非您有理由更改它们。以下是有关这些属性的信息。有关附加信息,请参见资源属性r_properties(5) 手册页。

Failover_mode

表明在 StartStop 方法失败的情况下,RGM 是应重新查找资源组还是应异常中止节点。

Thorough_probe_intervalRetry_countRetry_interval

用于故障监视器。Tunable 等于 ANYTIME,因此如果故障监视器不能发挥最佳工作效果,群集管理员可以对它们进行调整。

Network_resources_used

数据服务使用的逻辑主机名或共享地址资源的列表。Agent Builder 将声明该属性,以便群集管理员对数据服务进行配置时,可以指定资源列表(如果有)。

Scalable

设置为 FALSE 以表明该资源没有使用群集网络(共享地址)设备。如果将该属性设置为 FALSE,资源类型属性 Failover 必须设置为 TRUE 以表明故障转移服务。有关如何使用该属性的附加信息,请参见将数据服务传送到群集实现回调方法

Load_balancing_policyLoad_balancing_weights

自动声明这些属性。但是,这些属性在故障转移资源类型中不起作用。

Port_list

标识服务器侦听的端口的列表。Agent Builder 将声明该属性,以便群集管理员对数据服务进行配置时,可以指定端口列表。