11.3. 配置资源 meta 选项
除了特定于资源的参数外,您还可以为任何资源配置其他资源选项。集群会使用这些选项来决定您的资源的行为。
下表描述了资源 meta 选项。
| 项 | 默认值 | 描述 | 
|---|---|---|
| 
								 | 
								 | 如果不是所有资源都处于活跃状态,集群将停止较低优先级的资源,以便保持优先权更高的资源的活跃状态。 | 
| 
								 | 
								 | 指明集群应尝试将此资源保持在什么状态。允许的值: 
								 
								*  
								*  
								*  
								在 RHEL 8.5 及更高版本中, | 
| 
								 | 
								 | 
								指明是否允许集群启动和停止资源。允许的值:  | 
| 
								 | 0 | 指示资源倾向于保留在当前位置的程度。有关此属性的详情,请参考 配置资源以首选其当前节点。 | 
| 
								 | Calculated | 指示可在什么情况下启动资源。 
								除非在下列情况下,否则默认为  
								*  
								*  
								*  
								*  | 
| 
								 | 
								 | 
								在此节点被标记为不允许托管此资源之前,资源在此节点上可能会发生多少次故障。值 0 表示禁用了此功能(节点永远不会标记为无效);相反,集群将  | 
| 
								 | 
								 | 忽略之前失败的资源操作,并在没有新的失败的情况下传递。如果之前达到其迁移阈值,这可能允许资源返回到失败的节点。值 0 表示失败不会过期。 警告 :如果这个值较低,且待处理的集群活动会阻止集群在这个时间内响应失败,则失败会被完全忽略,且不会导致恢复资源,即使重复操作继续报告失败。这个选项的值应至少大于集群中所有资源的最长操作超时。以小时或天为单位的值合理。 | 
| 
								 | 
								 | 如果在多个节点上找到活跃的资源,指示集群应该做什么。允许的值: 
								*  
								*  
								*  
								*  | 
| 
								 | 
								 | 
								(RHEL 8.4 及更新的版本)为涉及资源作为依赖资源(target_resource)的所有 colocation 约束设置  | 
| 
								 | 
								 | 
								(RHEL 8.7 及更高版本)当设为  | 
11.3.1. 更改资源选项的默认值
					在 Red Hat Enterprise Linux 8.3 及更新的版本中,您可以使用 pcs resource defaults update 命令更改所有资源的资源选项默认值。以下命令将 resource-stickiness 的默认值重置为 100。
				
pcs resource defaults update resource-stickiness=100
# pcs resource defaults update resource-stickiness=100
					pcs resource defaults name=value 命令为之前版本中的所有资源设置默认值,保持支持,除非配置了多个默认值。但是,pcs resource defaults update 现在是 命令的首选版本。
				
11.3.2. 更改一组资源的资源选项的默认值
					在 Red Hat Enterprise Linux 8.3 及更新的版本中,您可以使用 pcs resource defaults set create 命令创建多组资源默认值,该命令允许您指定包含 资源 表达式的规则。在 RHEL 8.3 中,您使用这个命令指定的规则只允许 资源 表达式,包括 and、or 和括号。在 RHEL 8.4 及更高版本中,您使用这个命令指定的规则中只允许 资源和 日期 表达式,包括 和 或 和括号。
				
					使用 pcs resource defaults set create 命令时,您可以为特定类型的所有资源配置默认值。例如,如果您正在运行数据库需要很长时间才能停止,您可以提高数据库类型的资源 粘性 默认值,以防止这些资源更频繁地移至其他节点。
				
					以下命令将 pqsql 类型 的所有资源的 resource-stickiness 默认值设置为 100。
				
- 
							id选项命名资源默认值集合,不强制使用。如果您不设置此选项,pcs 将自动生成 ID。设置这个值可让您提供更描述性的名称。
- 在本例中, - ::pgsql表示 type- pgsql的任何类(任何提供程序)的资源。- 
									指定 ocf:heartbeat:pgsql将指示类ocf, providerheartbeat, typepgsql,
- 
									指定 ocf:pacemaker:可以指示任何类型的ocf、提供商pacemaker的所有资源。
 
- 
									指定 
pcs resource defaults set create id=pgsql-stickiness meta resource-stickiness=100 rule resource ::pgsql
# pcs resource defaults set create id=pgsql-stickiness meta resource-stickiness=100 rule resource ::pgsql
					要更改现有集合中的默认值,请使用 pcs resource defaults set update 命令。
				
11.3.3. 显示当前配置的资源默认设置
					pcs resource defaults 命令显示目前配置的资源选项默认值列表,包括您指定的规则。
				
					以下示例显示了在将 resource-stickiness 的默认值重置为 100 后,此命令的输出。
				
pcs resource defaults
# pcs resource defaults
Meta Attrs: rsc_defaults-meta_attributes
  resource-stickiness=100
					以下示例显示了在将 pqsql 类型的所有资源的 resource-stickiness 重置为 100 后这个命令的输出,并将 id 选项设置为 id =pgsql-stickiness。
				
pcs resource defaults
# pcs resource defaults
Meta Attrs: pgsql-stickiness
  resource-stickiness=100
  Rule: boolean-op=and score=INFINITY
    Expression: resource ::pgsql11.3.4. 在创建资源时设置 meta 选项
					是否重置资源 meta 选项的默认值,您可以在创建资源时将特定资源的资源选项设置为默认值,而不是默认值。以下显示了在为资源元选项指定值时使用的 pcs resource create 命令的格式。
				
pcs resource create resource_id [standard:[provider:]]type [resource options] [meta meta_options...]
pcs resource create resource_id [standard:[provider:]]type [resource options] [meta meta_options...]
					例如,以下命令创建一个 resource-stickiness 值为 50 的资源。
				
pcs resource create VirtualIP ocf:heartbeat:IPaddr2 ip=192.168.0.120 meta resource-stickiness=50
# pcs resource create VirtualIP ocf:heartbeat:IPaddr2 ip=192.168.0.120 meta resource-stickiness=50您还可以使用以下命令为现有资源、组或克隆的资源设置资源 meta 选项的值。
pcs resource meta resource_id | group_id | clone_id meta_options
pcs resource meta resource_id | group_id | clone_id meta_options
					在以下示例中,有一个名为 dummy_resource 的现有资源。此命令将 failure-timeout 元选项设置为 20 秒,因此资源可在 20 秒内尝试在同一节点上重启。
				
pcs resource meta dummy_resource failure-timeout=20s
# pcs resource meta dummy_resource failure-timeout=20s
					执行此命令后,您可以显示资源的值,以验证是否设置了 failure-timeout=20s。
				
pcs resource config dummy_resource
# pcs resource config dummy_resource
 Resource: dummy_resource (class=ocf provider=heartbeat type=Dummy)
  Meta Attrs: failure-timeout=20s
  ...