Pacemaker 资源代理在其元数据中提及其操作超时、间隔等的默认值。例如,crm_resource --show-metadata=ocf:heartbeat:IPaddr2
列出一些:
<actions>
<action name="start" timeout="20s" />
<action name="stop" timeout="20s" />
<action name="status" depth="0" timeout="20s" interval="10s" />
<action name="monitor" depth="0" timeout="20s" interval="10s" />
<action name="meta-data" timeout="5s" />
<action name="validate-all" timeout="20s" />
</actions>
当我在配置资源时(例如 with )没有指定显式值时,这些是否会被视为默认值,crm configure primitive ip_test IPaddr2 params ip=1.2.3.4 nic=eth0 cidr_netmask=32 iflabel=test
或者当我想使用此类默认值(例如 with crm configure primitive ip_test ... op monitor timeout=20s interval=10s
)时,我是否必须明确设置它们?
我目前的假设是第二种情况,除非另有明确设置,否则所有超时、间隔等通常默认为 0(而不是元数据中提到的任何默认值)。但是我在文档中没有找到任何明确的声明,也没有找到可以显示所有相关值的命令(crm resource show ip_nginx
),所以我正在联系可能更了解的人。
资源代理元数据中指定的超时不是默认值,而是资源代理作者定义的建议最小值。
默认值,如果未指定,实际上是 20s,如“ Cluster from Scratch ”文档中所述:
指定超时值被认为是一种很好的做法。即使使用默认的 20 秒,我也会经常指定值。