Product SiteDocumentation Site

5.7. Resource Operations

5.7.1. Monitoring Resources for Failure

By default, the cluster will not ensure your resources are still healthy. To instruct the cluster to do this, you need to add a monitor operation to the resource's definition.
Example 5.7. An OCF resource with a recurring health check

  <primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat">
     <op id="public-ip-check" name="monitor" interval="60s"/>
    <instance_attributes id="params-public-ip">
       <nvpair id="public-ip-addr" name="ip" value=""/>

Table 5.3. Properties of an Operation
Field Description
id Your name for the action. Must be unique.
name The action to perform. Common values: monitor, start, stop
interval How frequently (in seconds) to perform the operation. Default value: 0
timeout How long to wait before declaring the action has failed.
What conditions need to be satisfied before this action occurs. Allowed values:
  • nothing - The cluster may start this resource at any time
  • quorum - The cluster can only start this resource if a majority of the configured nodes are active
  • fencing - The cluster can only start this resource if a majority of the configured nodes are active and any failed or unknown nodes have been powered off.
STONITH resources default to nothing, and all others default to fencing if STONITH is enabled and quorum otherwise.
The action to take if this action ever fails. Allowed values:
  • ignore - Pretend the resource did not fail
  • block - Don't perform any further operations on the resource
  • stop - Stop the resource and do not start it elsewhere
  • restart - Stop the resource and start it again (possibly on a different node)
  • fence - STONITH the node on which the resource failed
  • standby - Move all resources away from the node on which the resource failed
The default for the stop operation is fence when STONITH is enabled and block otherwise. All other operations default to stop.
enabled If false, the operation is treated as if it does not exist. Allowed values: true, false