本附录介绍资源类型、资源组和资源的标准特性。本附录还介绍了可用于更改系统定义的特性以及创建扩展特性的资源特性属性。
本附录包括以下内容:
以下内容介绍了 Sun Cluster 定义的资源类型特性。特性值分为以下几类(在“类别”后面给出):
必需的 – 该特性要求在资源类型注册 (RTR) 文件中具有明确的值。否则,将无法创建特性所属的对象。该值不能是空白或空字符串。
有条件的 – 该特性必须在 RTR 文件中声明后才能存在。否则,RGM 将不会创建该特性,并且该特性也将不可用于管理实用程序。允许使用空白或空字符串。如果在 RTR 文件中声明特性但未指定值,RGM 将提供缺省值。
有条件的/显式 – 该特性必须在 RTR 文件中以显式值声明后才能存在。否则,RGM 不会创建该特性,并且该特性也将不可用于管理实用程序。不允许使用空白或空字符串。
可选的 — 可以在 RTR 文件中声明特性。如果未在 RTR 文件中声明此特性,则 RGM 将创建该特性并为其提供一个缺省值。如果特性在 RTR 文件中进行了声明但未指定其值,则 RGM 所提供的缺省值与未在 RTR 文件中声明该特性时提供的缺省值相同。
除 Installed_nodes 和 RT_system(此二者无法在 RTR 文件中声明并且必需由管理员设置)以外,其他资源类型特性均无法通过管理实用程序进行更新。
首先列出的是特性名称,后面是对该特性的说明。
此资源类型实现所使用的资源管理 API 的版本。
以下内容概述了 Sun Cluster 的各个版本可支持的最高 API_version。
2
3
4
5
如果在 RTR 文件中声明的 API_version 的值大于 2,将禁止在支持的最高版本比声明的值低的 Sun Cluster 版本上安装该资源类型。例如,如果您为某一资源类型声明 API_version=5,则无法在 3.1 9/04 之前发行的任何 Sun Cluster 版本上安装该资源类型。
可选
2
否
一种可选的回调方法:节点连接或重新连接群集时,RGM 将对此节点调用的程序的路径(此类型的资源处于被管理状态时)。与 Init 方法执行的操作相似,此方法将对此类型的资源执行初始化操作。
有条件的/显式
无
否
TRUE 表明此类型的资源无法在同时可在多个节点上联机的任何组内进行配置。
可选
FALSE
否
一种可选的回调方法:从 RGM 管理中删除此类型的资源时,RGM 所调用的程序的路径。
有条件的/显式
无
否
一种可选的回调方法:当此类型的资源开始处于 RGM 的管理之下时,RGM 所调用的程序的路径。
有条件的/显式
无
否
该值可以是 RG_primaries(仅那些可以控制该资源的节点)或 RT_installed_nodes(安装该资源类型的所有节点)。表明 RGM 对哪些节点调用 Init、Fini、Boot 和 Validate 方法。
可选
RG_primaries
否
可以在其上运行该资源类型的群集节点的名称列表。RGM 将自动创建此特性。群集管理员可以设置此值。不能在 RTR 文件中声明该特性。
可以由群集管理员进行配置
所有群集节点
是
TRUE 表明此资源类型是用来管理故障转移 Internet 协议 (IP) 地址的 LogicalHostname 资源类型的某个版本。
仅限于查询
无缺省值
否
TRUE 表明此资源类型是用来管理故障转移 Internet 协议 (IP) 地址的 SharedAddress 资源类型的某个版本。
仅限于查询
无缺省值
否
一种可选的回调方法:在对此类型的资源执行监视器所请求的失效转移之前,RGM 调用的程序的路径。
有条件的/显式
无缺省值
否
一种可选的回调方法:RGM 为启动此类型的资源的故障监视器而调用的程序的路径。
有条件的/显式
无缺省值
否
将 Monitor_start 设置为以下路径时是所需的一种回调方法:RGM 为停止此类型的资源的故障监视器而调用的程序的路径。
有条件的/显式
无缺省值
否
包含在资源类型安装中的软件包的可选列表。
有条件的/显式
无缺省值
否
一种可选的回调方法:在调用了该类型资源所依赖的所有网络地址资源的 Stop 方法后,RGM 调用的程序的路径。配置网络接口使其关闭后,此方法必须执行 Stop 操作。
有条件的/显式
无缺省值
否
一种可选的回调方法:在调用该类型资源所依赖的任何网络地址资源的 Stop 方法之前,RGM 调用的程序的路径。此方法将执行 Start 操作(在配置网络接口之前必需执行该操作)。
有条件的/显式
无缺省值
否
资源类型的名称。要查看当前已注册的资源类型的名称,请使用:
scrgadm -p
在 Sun Cluster 3.1 和更高版本中,要求资源类型名称必须包含版本:
vendor_id.resource_type:version
资源类型名称是由在 RTR 文件中被指定为 Vendor_id、Resource_type 和 RT_version 的这三个特性组成的。scrgadm 命令会在这三个特性之间插入句点 (.) 和冒号 (:)分界符。资源类型名称中的 RT_version 后缀的值与 RT_version 特性的值相同。为了确保 Vendor_id 的唯一性,建议使用创建该资源类型的公司的股票标志。在 Sun Cluster 3.1 之前的版本中创建的资源类型名称继续采用以下语法:
vendor_id.resource_type
必需
空字符串
否
用于完成回调方法的相对路径的目录路径。此路径将设置为安装资源类型软件包的位置。该路径必须是完整路径,即该路径必须以正斜杠 (/) 开头。如果所有的方法路径名称都是绝对路径,则此特性不是必需的。
必需的,除非所有方法路径名称均为绝对路径
无缺省值
否
资源类型的简单说明。
有条件的
空字符串
否
如果将某资源类型的该特性设置为 TRUE,将限制执行原来对该资源类型允许的 scrgadm( 1M) 操作。如果某种资源类型的 RT_system 的值设置为 TRUE,则称之为系统资源类型。不管 RT_system 当前为何值,编辑 RT_system 特性的操作都决不会受到限制。
可选
FALSE
是
从 Sun Cluster 3.1 开始,实施该资源类型必需版本字符串。RT_version 是完整资源类型名称的后缀部分。在 Sun Cluster 3.0 中,RT_version 是可选特性,但在 Sun Cluster 3.1 和更高版本中则是必需的特性。
可选/显式或必需的
无缺省值
否
如果将其设置为 TRUE,则表明在群集中只能存在一个此类型的资源。RGM 仅允许在整个群集中只能同时运行一个此类型的资源。
可选
FALSE
否
一种回调方法:RGM 所调用的用来启动此类型的资源的程序的路径。
必需的(除非在 RTR 文件中声明了 Prenet_start 方法)
无缺省值
否
一种回调方法:为停止此类型的资源,RGM 调用的程序的路径。
必需的(除非在 RTR 文件中声明了 Postnet_stop 方法)
无缺省值
否
一种可选的回调方法:当更改此类型的运行资源的特性时,RGM 所调用的程序的路径。
有条件的/显式
无缺省值
否
一种可选的回调方法:为检查此类型的资源的特性值而调用的程序的路径。
有条件的/显式
无缺省值
否
请参见 Resource_type 特性。
有条件的
无缺省值
否
本节介绍了 Sun Cluster 定义的一些资源特性。特性值分为以下几类(在“类别”后面给出):
必需的 - 管理员在使用管理实用程序创建资源时必须指定一个值。
可选的 - 如果管理员在创建资源组时未指定值,则系统将提供一个缺省值。
有条件的 - 仅当在 RTR 文件中声明了特性后,RGM 才会创建该特性。否则,该特性将不存在,系统管理员将不能使用该特性。RTR 文件中声明的条件特性是可选的还是必需的取决于是否在 RTR 文件中指定了缺省值。有关更多信息,请参见对每个条件特性的说明。
仅限于查询 - 不能通过管理工具直接进行设置。
“可调”一栏列出了是否以及何时可以更新资源特性,如下所示:
NONE 或 FALSE |
永远不 |
TRUE 或 ANYTIME |
任何时候 |
AT_CREATION |
在将资源添加到群集时 |
WHEN_DISABLED |
当资源被禁止时 |
前面的是特性名,后面是对该特性的描述。
以秒表示的时间长度,在此期间,对于资源中的任何服务,来自给定客户机IP 地址的连接均被发送到同一服务器节点。
仅当 Load_balancing_policy 为 Lb_sticky 或 Lb_sticky_wild 时,此特性才适用。此外,还必须将 Weak_affinity 设置为 FALSE(缺省值)。
此特性只用于可伸缩服务。
可选的
无缺省值
ANYTIME
在两次资源故障快速探测的调用之间的秒数。此特性由 RGM 创建,并且仅当在 RTR 文件中声明该特性后,管理员才可以使用该特性。
如果在 RTR 文件中指定了缺省值,则此特性是可选的。如果未在资源类型文件中指定 Tunable 属性,则该特性的 Tunable 的值为 WHEN_DISABLED。
如果在 RTR 文件中声明了此特性并且未指定 Default 属性,则此特性是必需的。
有条件的
无缺省值
WHEN_DISABLED
在资源类型的 RTR 文件中声明的扩展特性。资源类型的实现中定义了这些特性。资源特性属性中提供了有关您可以为扩展特性设置的各个属性的信息。
有条件的
无缺省值
取决于特定的特性
如果启动方法(Prenet_start 或 Start)失败,NONE、SOFT 和 HARD 将只会影响故障转移行为。但是,一旦资源已成功启动,NONE、SOFT 和 HARD 便不会对随后资源监视器用 scha_control(1HA) 或 scha_control(3HA) 发起的资源重新启动或移交行为产生任何影响。NONE(缺省值)表示在方法失败时 RGM 将设置资源状态并等待用户干预。SOFT 表示,如果 Start 方法失败,则 RGM 会将资源组重新定位到其他节点。如果 Stop 方法或 Monitor_stop 方法失败,则 RGM 会将相应资源的状态设置为 Stop_failed 并将资源组的状态设置为 Error_stop_failed。然后,RGM 等待用户干预。对于 Stop 方法失败或 Monitor_stop 方法失败,NONE 和 SOFT 的作用是相同的。HARD 表示,如果 Start 方法失败,RGM 将重新定位相应的组。如果 Stop 方法失败或 Monitor_stop 方法失败,RGM 将异常终止相应的群集节点以停止资源。如果是 Start 方法失败或 Prenet_start 方法失败,则 HARD、NONE 和 SOFT 都可以影响故障转移行为。
与 NONE、SOFT 和 HARD 不同,RESTART_ONLY 和 LOG_ONLY 可影响所有故障转移行为,包括监视器发起 (scha_control ) 的资源和资源组的重新启动行为,以及资源监视器发起 (scha_control) 的移交行为。RESTART_ONLY 表示监视器可以运行 scha_control 来重新启动资源,但如果 scha_control 随后失败,它会尝试执行资源组重新启动或移交操作。RGM 允许在 Retry_interval 指定的时间间隔内重新启动 Retry_count 次。如果超出了 Retry_count 的限制,则不再允许重新启动资源。如果将 Failover_mode 设置为 LOG_ONLY,则不允许重新启动或停止资源。将 Failover_mode 设置为 LOG_ONLY 的作用与在 Retry_count 设置为零的情况下将 Failover_mode 设置为 RESTART_ONLY 的作用相同。如果启动方法失败,则 RESTART_ONLY 和 LOG_ONLY 的作用与 NONE 的作用相同:不发生任何故障转移行为,并且资源状态将更改为 Start_failed。
可选的
无缺省值
ANYTIME
定义所使用的负载平衡策略的字符串。此特性仅用于可伸缩服务。如果在 RTR 文件中声明了 Scalable 特性,则 RGM 将自动创建此特性。Load_balancing_policy 可以取以下值:
Lb_weighted(缺省值)。根据在 Load_balancing_weights 特性中设置的权重在各个节点间分配负载。
Lb_sticky。可伸缩服务的给定客户机(由客户机的 IP 地址标识)总是被发送到同一群集节点。
Lb_sticky_wild。连接到用通配符表示的粘滞服务的 IP 地址的给定客户机 IP 地址总是被发送到相同的群集节点,而忽略此 IP 地址的目标端口号。
有条件的/可选的
Lb_weighted
AT_CREATION
只用于可伸缩资源。如果在 RTR 文件中声明了 Scalable 特性,则 RGM 将自动创建此特性。格式为 weight@ node,weight@node,其中 weight 是一个整数,它反映分配到指定 node 的负载的相对部分。分配到某个节点的负载部分是此节点的权数除以所有权数的和。例如,1@1,3@2 指定节点 1 接收 1/4 的负载而节点 2 接收 3/4 的负载。缺省值,即空字符串 (“”),设置了统一分发。未明确指定权重的任何节点的缺省权重为 1。
如果未在资源类型文件中指定 Tunable 属性,则相应特性的 Tunable 的值为 ANYTIME。更改该特性将仅改变新连接的分配。
有条件的/可选的
空字符串 ("")
ANYTIME
以秒计算的时间段,这段时间过后,RGM 将认为对方法的调用已失败。
有条件的/可选的
如果该方法已在 RTR 文件中声明,则缺省值为 3600(一小时)
ANYTIME
如果群集管理员通过管理实用程序启用或禁用监视器,则 RGM 会将此特性设置为 Enabled 或 Disabled。如果设置为 Disabled,则在下次启用该监视器前,不会调用该监视器的 Start 方法。如果资源没有监视器回调方法,则此特性不存在。
仅限于查询
无缺省值
永远不
资源所使用的逻辑主机名或共享地址网络资源的列表。对于可伸缩服务,此特性必须是指存在于单独资源组的共享地址资源。对于失败转移服务,此特性是指存在于相同的资源组的逻辑主机名或共享地址资源。如果在 RTR 文件中声明了 Scalable 特性,则 RGM 将自动创建此特性。如果在 RTR 文件中没有声明 Scalable,Network_resources_used 将不可用,除非在 RTR 文件中显式声明。
如果未在资源类型文件中指定 Tunable 属性,则该特性的 Tunable 的值为 AT_CREATION。
SUNW.Event(5) 手册页中说明了如何为 CRNP 设置该特性。
有条件的/必需的
无缺省值
AT_CREATION
您无法直接设置该特性,该特性将由 RGM 设置为在过去的 n 秒内为该节点上的此资源调用 scha_control、Resource_restart 或 Resource_is_restarted 的次数。n 为此资源的 Retry_interval 特性的值。只要此资源执行了 scha_control 移交操作,无论该移交尝试成功还是失败,RGM 都会将资源重新启动计数器重置为零。
如果资源类型未声明 Retry_interval 特性,则该类型的资源不能使用 Num_resource_restarts 特性。
仅限于查询
无缺省值
否
您无法直接设置该特性,该特性将由 RGM 设置为在过去 n 秒内,此资源为其所在节点上包含的资源组调用 scha_control 或 Restart 的次数,其中 n 为此资源的 Retry_interval 特性的值。如果资源类型未声明 Retry_interval 特性,则该类型的资源不能使用 Num_rg_restarts 特性。
请参见说明
无缺省值
否
如果群集管理员通过管理实用程序启用或禁用资源,则 RMG 会将此特性设置为 Enabled 或 Disabled。如果设置为禁用,资源将进入脱机状态,并且再次启用资源前资源将不能调用任何回调。
仅限于查询
无缺省值
永远不
端口(服务器在其上进行侦听)号列表。每个端口号后面均附加了一个斜杠 (/),斜杠后面是该端口使用的协议,例如,Port_list=80/tcp 或 Port_list=80/tcp6,40/udp6。您可以指定以下协议:
tcp(适用于 TCP IPv4)
tcp6(适用于 TCP IPv6)
udp(适用于 UDP IPv4)
udp6(适用于 UDP IPv6)
在《用于 Apache 的 Sun Cluster 数据服务指南(适用于 Solaris OS)》中介绍了为 Apache 设置此特性的方法。
有条件的/必需的
无缺省值
AT_CREATION
资源的简单说明。
可选的
空字符串
ANYTIME
相同或不同组中此资源对其具有强依赖性的资源列表。如果该列表中有任一资源处于脱机状态,则无法启动此资源。如果此资源与该列表中的某一资源同时启动,则 RGM 要等到该列表中的资源启动后才会启动此资源。如果没有启动此资源的 Resource_dependencies 列表中的资源,则此资源也会保持脱机状态。此资源的该列表中的资源可能会因它的资源组正处于脱机状态或它正处于 Start_failed 状态而没有启动。如果此资源因依赖于另一不同资源组中未能启动的资源而仍处于脱机状态,则此资源所属的组将进入Pending_online_blocked 状态。
如果此资源与该列表中的资源同时进入脱机状态,则将在停止该列表中的资源之前先停止此资源。但是,即使此资源仍处于联机状态或无法停止,该列表中属于另一不同资源组的资源照样也会停止。除非先禁用此资源,否则无法禁用该列表中的资源。
缺省情况下,在资源组中,应用程序资源对网络地址资源具有固有的强依赖性。有关 Implicit_network_dependencies 的更多信息,请参见资源组特性。
在资源组中,按照依赖顺序,Prenet_start 方法将先于 Start 方法运行。按照依赖顺序,Postnet_stop 方法将迟于 Stop 方法运行。在不同的资源组中,依赖于其他资源的资源将等待其所依赖的资源完成 Prenet_start 和 Start 方法后才开始运行 Prenet_start。而所依赖的资源将等待该资源完成 Stop 和 Postnet_stop 方法后才开始运行 Stop。
可选的
空列表
ANYTIME
相同或不同组中此资源对其具有重新启动依赖性的资源列表。
此特性的作用与Resource_dependencies 类似,只是如果重新启动依赖性列表中的任一资源被重新启动,则也会重新启动此资源。在该列表中的资源恢复为联机状态后也会重新启动此资源。
可选的
空列表
ANYTIME
相同或不同组中此资源对其具有弱依赖性的资源列表。较弱的依赖性将确定方法调用的顺序。RGM 在调用此资源的 Start 方法前将先调用该列表中的资源的 Start 方法。RGM 在调用该列表中的资源的 Stop 方法前将先调用此资源的 Stop 方法。即使该列表中的资源启动失败或保持在脱机状态,仍然可以启动此资源。
如果此资源和它的 Resource_dependencies_weak 列表中的资源同时启动,则 RGM 将等待该列表中的资源启动后才开始启动此资源。如果该列表中的资源没有启动(例如,如果列表中资源的资源组处于脱机状态或列表中的资源处于 Start_failed 状态),则将重新启动此资源。在启动此资源的 Resource_dependencies_weak 列表中的资源时,此资源的资源组将会暂时进入 Pending_online_blocked 状态。如果该列表中所有资源均已启动或启动失败,则将启动此资源并且它的资源组将重新进入 Pending_online 状态。
如果此资源和该列表中的资源同时进入脱机状态,则在停止该列表中的资源之前将先停止此资源。如果此资源处于联机状态或停止失败,仍将停止该列表中的资源。除非先禁用此资源,否则无法禁用该列表中的资源。
在资源组中,按照依赖顺序,Prenet_start 方法将先于 Start 运行。按照依赖顺序,将在运行 Postnet_stop 方法后运行 Stop 方法。在不同的资源组中,依赖于其他资源的资源将等待其所依赖的资源完成 Prenet_start 和 Start 方法后才开始运行 Prenet_start 方法。而所依赖的资源将等待该资源完成 Stop 和 Postnet_stop 方法后才开始运行 Stop 方法。
可选的
空列表
ANYTIME
资源实例的名称。在群集配置中此名称必须唯一,并且在资源创建后该名称无法进行更改。
必需的
无缺省值
永远不
与资源关联的 Solaris 项目名。使用此特性可将 Solaris 资源管理功能(例如 CPU 共享和资源池)应用至群集数据服务。当 RGM 使资源联机时,它将启动此项目名下的相关进程。如果未指定此特性,则将从包含该资源的资源组的 RG_project_name 特性中获取项目名(请参见 rg_properties [5])。如果也未指定该特性,则 RGM 将使用预定义的项目名 default。指定的项目名称必须存在于项目数据库中,并且用户 root 必须配置为已命名项目的成员。只有 Solaris 9 和更高版本的 Solaris 支持此特性。
对此特性进行的更改将在下次启动资源时生效。
可选的
空
ANYTIME
每个群集节点上由 RGM 确定的资源状态。可能出现的状态有 Online、Offline、Start_failed、Stop_failed、Monitor_failed、Online_not_monitored、Starting 和 Stopping。
不能配置该特性。
仅限于查询
无缺省值
永远不
如果资源失败,监视器尝试重新启动该资源的次数。此特性由 RGM 创建,并且只有在 RTR 文件中声明后,管理员才可以使用此特性。如果在 RTR 文件中指定了缺省值,则 Retry_count 特性就是可选的。
如果未在资源类型文件中指定 Tunable 属性,则该特性的 Tunable 的值就为 WHEN_DISABLED。
如果已在 RTR 文件中声明并且未指定 Default 属性,则此特性就是必需的。
有条件的
无缺省值
WHEN_DISABLED
尝试重新启动失败的资源前计算的秒数。资源监视器将此特性与 Retry_count 一起使用。此特性由 RGM 创建,并且只有在 RTR 文件中声明后,管理员才可以使用此特性。如果在 RTR 文件中指定了缺省值,则 Retry_interval 特性就是可选的。
如果未在资源类型文件中指定 Tunable 属性,则此特性的 Tunable 的值就为 WHEN_DISABLED。
如果已在 RTR 文件中声明并且未指定 Default 属性,则此特性就是必需的。
有条件的
无缺省值
WHEN_DISABLED
表示资源是否为可伸缩的资源,即资源是否使用 Sun Cluster 的网络负载平衡功能。
如果在 RTR 文件中声明了此特性,则 RGM 将为该类型的资源自动创建以下可伸缩服务特性:Affinity_timeout、Load_balancing_policy、Load_balancing_weights、Network_resources_used、Port_list、UDP_affinity 和 Weak_affinity。这些特性具有缺省值,除非在 RTR 文件中对它们进行了显式声明。在 RTR 文件中声明了 Scalable 后,其缺省值为 TRUE。
如果在 RTR 文件中声明了此特性,则不允许再将 Tunable 属性指定为 AT_CREATION 以外的值。
如果未在 RTR 文件中声明此特性,则该资源将不可伸缩,而您也无法调节此特性,并且 RGM 也不会设置任何可伸缩服务特性。但是,您可以在 RTR 文件中明确声明 Network_resources_used 和 Port_list 特性,这是因为它们在非可伸缩服务和可伸缩服务中都有用。
请结合 Failover 资源类型特性使用此资源特性,如下所述:
有关结合 Failover 资源类型特性来使用此资源特性的更多信息,请参见 r_properties (5)。
可选的
无缺省值
AT_CREATION
由资源监视器使用 scha_resource_setstatus(1HA) 或 scha_resource_setstatus(3HA) 设置。可能的值包括 OK、degraded、faulted、unknown 和 offline。当资源进入联机或脱机状态时,如果资源监视器或资源调用的方法未设置 Status 的值,则 RGM 将自动设置 Status 的值。
仅限于查询
无缺省值
永远不
由资源监视器在设置 Status 特性的同时进行设置。当资源进入联机或脱机状态时,如果资源调用的方法未设置此特性,则 RGM 将自动把此特性的值复位为空字符串。
仅限于查询
无缺省值
永远不
在两次资源高开销故障探测的调用之间的秒数。此特性由 RGM 创建,并且只有在 RTR 文件中声明后,管理员才可以使用此特性。如果在 RTR 文件中指定了缺省值,则 Thorough_probe_interval 就是可选的。
如果未在资源类型文件中指定 Tunable 属性,则此特性的 Tunable 的值就为 WHEN_DISABLED。
如果未在 RTR 文件的特性声明中指定 Default 属性,则此特性为必需的。
有条件的
无缺省值
WHEN_DISABLED
资源类型,此资源是该资源类型的一个实例。
必需的
无缺省值
永远不
指定当前与此资源关联的资源类型的版本。RGM 将自动创建此特性,该特性不能在 RTR 文件中声明。此特性的值与资源类型的 RT_version 特性一样。创建资源时,并不明确指定 Type_version 特性,尽管它可能显示为资源类型名称的后缀。编辑资源时,可以将 Type_version 更改为新值。
资源类型的当前版本
RTR 文件中的 #$upgrade_from 指令
请参见说明
无缺省值
请参见说明
如果为 true,则来自给定客户机的所有 UDP 通信都将发送至当前处理该客户机的所有 TCP 通信的同一服务器节点。
仅当 Load_balancing_policy 的值为 Lb_sticky 或 Lb_sticky_wild 时,此特性才适用。此外,还必须将 Weak_affinity 设置为 FALSE(缺省值)。
此特性只用于可伸缩服务。
可选的
无缺省值
WHEN_DISABLED
如果为 true,则启用较弱的客户机关联性。除发生以下情况外,弱式客户机关联性允许将来自给定客户机的连接发送至同一服务器节点:
服务器侦听器应某些情况要求而启动,例如,故障监视器的重新启动、资源的故障转移或切换,或者节点在失败后重新加入群集
由于管理操作而导致可伸缩资源的 Load_balancing_weights 发生更改
就内存消耗和处理器周期而言,不采用缺省形式而启用较弱的关联性所使用的系统开销较低。
仅当 Load_balancing_policy 的值为 Lb_sticky 或 Lb_sticky_wild 时,此特性才适用。
此特性只用于可伸缩服务。
可选的
无缺省值
WHEN_DISABLED
以下信息介绍了由 Sun Cluster 定义的资源组特性。特性值分为以下几类(在“类别”后面给出):
必需的 — 管理员必须在使用管理实用程序创建资源时指定一个值。
可选的 - 如果管理员在创建资源组时未指定值,则系统将提供一个缺省值。
仅限于查询 - 不能通过管理工具直接进行设置。
每个说明中指出了在进行初始设置后是否可以更新特性(“Yes”表示可以更新,“No”表示不可以更新)。
前面的是特性名,其后是对该特性的描述。
在新的群集形成时,此特性不允许自动启动资源组。
如果将其设置为 TRUE,则资源组管理器会在重新引导群集时尝试自动启动资源组,以实现 Desired_primaries。如果设置为 FALSE,则重新引导群集时资源组将不会自动启动。
可选的
TRUE
是
希望使组同时在其上处于联机状态的节点数量。
如果 RG_mode 特性为 Failover,则此特性的值必须小于等于 1。如果 RG_mode 特性为 Scalable,则允许此特性的值大于 1。
可选的
1
是
一个布尔值,表明当群集成员资格更改时,是否重新计算组联机的节点集。重新计算将造成资源组管理器使组在优先级较低的节点上脱机,并在优先级较高的节点上联机。
可选的
FALSE
是
表明群集文件系统是否由此资源组中的任何资源使用。管理员可以指定的合法值是星号 (*)(表明所有全局资源)以及空字符串 (“”)(表明没有全局资源)。
可选的
所有全局资源
是
该布尔值为 TRUE 时,表示 RGM 将在组内强制实施非网络地址资源对网络地址资源的隐含强依赖性。网络地址资源包括逻辑主机名和共享地址资源类型。
在可缩放的资源组内,此特性不起作用,这是因为可伸缩的资源组中不包含任何网络地址资源。
可选的
TRUE
是
组一次可以联机的最大节点数。
如果 RG_mode 特性为 Failover,则此特性的值必须小于等于 1。如果 RG_mode 特性为 Scalable,则允许此特性的值大于 1。
可选的
1
是
群集节点列表,在这些节点上可以按优先顺序使组联机。这些节点被称为资源组的潜在主节点或主控节点。
可选的
所有群集节点的列表
是
群集文件系统中,组资源可以编写所需管理文件的目录。某些资源可能需要此特性。使 Pathprefix 对每个资源组都是唯一的。
可选的
空字符串
是
非负整数值(单位为秒),供 RGM 使用以确定何时使资源组进入联机状态。出现以下情况时可能需要此特性:
如果出现重新配置的情况
执行了 scha_control -O GIVEOVER 命令或包含 SCHA_GIVEOVER 参数的 scha_control() 函数
如果调用资源的scha_control 命令或函数导致资源组在过去的 Pingpong_interval 秒内在某个特定节点上脱机,则该特定节点不能作为该资源组的合法宿主,这是因为随后对 scha_control() 的调用将源自于另一节点。
可选的
3600 (一小时)
是
组中包含的资源的列表。管理员不会直接设置该特性。而是当管理员向/从资源组中添加/删除资源组时,由 RGM 更新此特性。
仅限于查询
无缺省值
否
RGM 将尝试在作为另外给定的资源组的当前宿主的节点上定位资源组(正关联),或在不是给定资源组的当前宿主的节点上定位资源组(负关联)。
++,即较强正关联
+,即较弱正关联
-,即较弱负关联
--,即较强负关联
+++,带故障转移托管的较强正关联
在《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》的“管理数据服务资源”中介绍了有关使用 RG_affinities 的信息。
可选的
空字符串
是
资源组的可选列表,用来表明使同一节点上的其他组进入联机或脱机状态的首选顺序。由所有较强RG_affinities(正和负)与 RG_dependencies 共同组成的图中不允许包含循环。
例如,假设资源组 RG2 在资源组 RG1 的 RG_dependencies 列表中列出。即,假设 RG1 具有对 RG2 的资源组依赖性。以下列表概述了此资源组依赖性的影响:
如果将某节点加入到群集中,则只有在 RG2 中的资源完成该节点上的所有 Boot 方法后,RG1 中的资源才能运行这些 Boot 方法。
如果同一节点上的 RG1 和 RG2 同时处于 Pending_online 状态,则只有在 RG2 中的所有资源完成它们的启动方法后,RG1 中的资源才能运行启动方法(Prenet_start 或 Start)。
如果同一节点上的 RG1 和 RG2 同时处于 Pending_offline 状态,则只有在 RG1 中的所有资源完成它们的停止方法后,RG2 中的资源才能运行停止方法(Stop 或 Postnet_stop)。
如果切换主节点会使 RG1 在任意一个节点上保持联机而使 RG2 在所有节点上都保持脱机,则尝试切换 RG1 或 RG2 的主节点将会失败。scswitch(1M) 和 scsetup(1M) 中包含了详细信息。
如果在 RG2 上已将 Desired_primaries 设置为零,则不允许将 RG1 上的 Desired_primaries 特性设置为大于零的值。
如果已将 RG2 上的 Auto_start_on_new_cluster 设置为 FALSE,则不允许将 RG1 上的 Auto_start_on_new_cluster 特性设置为 TRUE。
可选的
空列表
是
资源组的简单说明。
可选的
空字符串
是
该布尔值表示是否要切换资源组所依赖的全局设备。如果将此特性设置为 TRUE,则将切换全局设备。如果将此特性设置为 FALSE,则将不切换任何全局设备。资源组的 Global_resources_used 特性表明该资源组是否依赖全局设备。
请不要直接设置 RG_is_frozen 特性。RGM 将在全局设备的状态发生更改时更新 RG_is_frozen 特性。
可选的
无缺省值
否
表明资源组是故障转移组还是可伸缩组。如果此特性的值为 Failover,RGM 将把该组的 Maximum_primaries 特性设置为 1 并将资源组限制为由单个节点控制。
如果此特性的值为 Scalable,RGM 将允许 Maximum_primaries 特性的值大于 1,这意味着,该组可以由多个节点同时控制。RGM 不允许将 Failover 特性为 TRUE 的资源添加到 RG_mode 为 Scalable 的资源组中。
如果 Maximum_primaries 为 1,则缺省值就为 Failover。如果 Maximum_primaries 的值大于 1,则缺省值就为 Scalable。
可选的
取决于 Maximum_primaries 的值
否
资源组的名称。该名称在群集内必须是唯一的。
必需的
无缺省值
否
与资源组关联的 Solaris 项目名。使用此特性可将 Solaris 资源管理功能(例如 CPU 共享和资源池)应用至群集数据服务。当 RGM 使资源组联机时,它将为没有设置 Resource_project_name 特性的资源启动此项目名下的相关进程。指定的项目名称必须存在于项目数据库中,并且用户 root 必须配置为已命名项目的成员。
只有 Solaris 9 和更高版本的 Solaris 支持此特性。
对此特性进行的更改将在下次启动该资源时生效。
可选的
文本字符串 "default"
ANYTIME
由 RGM 设置为 Unmanaged、Online、Offline、Pending_online、Pending_offline、Pending_online_blocked、Error_stop_failed、Online_faulted 或 Pending_online_blocked,用来描述组在每个群集节点上的状态。
不能配置该特性。但是,您可以通过调用 scswitch( 1M)(或使用等效的 scsetup (1M) 或 SunPlex Manager 命令)来间接设置此特性。
仅限于查询
无缺省值
否
如果某个资源组的 RG_system 特性为 TRUE,则限制对此资源组和该资源组中包含的资源执行某些特定操作。此限制旨在防止意外修改或删除重要的资源组和资源。受此特性影响的只有 scrgadm (1M) 和 scswitch(1M) 命令。而 scha_control (1HA) 和 scha_control(3HA) 不受影响。
在对资源组(或该资源组中的资源)执行受限制的操作前,必须先将该资源组的 RG_system 特性设置为 FALSE。当修改或删除支持群集服务的资源组时,或者当修改或删除此类资源组中包含的资源时,请慎用此特性。
RG_system 值设置为 TRUE 的资源组称为系统资源组。无论 RG_system 当前为何值,系统都决不会限制编辑 RG_system 特性。rg_properties (5) 手册页详细介绍了这些限制。
可选的
FALSE
是
以下内容介绍了可用来更改系统定义的特性或创建扩展特性的资源特性属性。
您不能将 Null 或空字符串 (“”) 指定为 boolean、enum 或 int 类型的缺省值。
首先列出的是特性名称,后面是对该特性的说明。
对于 stringarray 类型,为允许的最大数组元素数。
对于 stringarray 类型,为允许的最小数组元素数。
表明特性的缺省值。
一个字符串注释,用于对特性作简单说明。对于系统定义的特性,不能在 RTR 文件中设置它的 Description 属性。
对于 enum 类型,为该特性所允许的一组字符串值。
如果使用,则表明 RTR 文件条目声明了一个由资源类型的实现定义的扩展特性,否则,此条目为系统定义的特性。
对于 int 类型,为此特性所允许的最大值。
对于 string 和 stringarray 类型,是允许的最大字符串长度。
对于 int 类型,为该特性所允许的最小值。
对于 string 和 stringarray 类型,是允许的最小字符串长度。
资源特性的名称。
表明群集管理员何时可以设置某个资源中的此特性值。可以将其设置为 NONE 或 FALSE 以防止管理员设置此特性。允许管理员调整的值包括 TRUE 或 ANYTIME(随时)、AT_CREATION(仅在创建资源时)或 WHEN_DISABLED(在资源脱机时)。要建立其他可调性条件,例如“何时禁用监视”或“何时脱机”,请将此属性设置为 ANYTIME,然后在 Validate 方法中验证资源的状态。
每个标准资源特性的缺省值均不相同,这将在下一节进行说明。如果在RTR 文件中没有指定其他值,则用于调整扩展特性的缺省设置为 TRUE ( ANYTIME)。
允许的类型为:string、boolean、int、enum 和 stringarray。对于系统定义的特性,您不能在 RTR 文件条目中设置类型属性。类型决定了可接受的特性值和在 RTR 文件条目中允许的特定于类型的属性。enum 类型是一组字符串值。