OCF_HEARTBEAT_MPATHP(7)

NAME
ocf_heartbeat_mpathpersist - Manages SCSI persistent reservations on multipath devices

SYNOPSIS

mpathpersist [start | stop | monitor | promote | demote | meta-data | validate-all]

DESCRIPTION

This resource agent manages SCSI persistent reservations on multipath devices. "mpathpersist" from multipath-tools is used, please see its documentation. Should be used as multistate (Master/Slave) resource Slave registers its node id ("crm_node -i") as reservation key ( --param-sark ) on each device in the params "devs" list. Master reserves all devices from params "devs" list with reservation "--prout-type" value from "reservation_type" parameter. Please see man sg_persist(8) and mpathpersist(8) for reservation_type details.

SUPPORTED PARAMETERS

binary
    The name of the binary that manages the resource.

    (optional, string, default "mpathpersist")

devs
    Device list. Multiple devices can be listed with blank space as separator. Shell wildcards are allowed.

    (required, string, no default)

required_devs_no
    Minimum number of "working" devices from device list 1) existing 2) "mpathpersist --in --read-keys <device>" works (Return code 0) resource actions "start","monitor","promote" and "validate-all" return "OCF_ERR_INSTALLED" if the actual number of "working" devices is less than "required_devs_no". resource actions "stop" and "demote" tries to remove reservations and registration keys from all working devices, but always return "OCF_SUCCESS"

    (optional, string, default "1")

reservation_type
    reservation type

    (optional, string, default "1")

master_score_base
    master_score_base value "master_score_base" value is used in "master_score" calculation: master_score = master_score_base + master_score_dev_factor * working_devs if set to bigger value in mpathpersist resource configuration on some node, this node will be "preferred" for master role.

    (optional, string, default "0")

master_score_dev_factor
    Working device factor in master_score calculation each "working" device provides additional value to "master_score", so the node that sees more devices will be preferred for the "Master"-role Setting it to 0 will disable this behavior.

    (optional, string, default "100")

master_score_delay
    master/slave decreases/increases its master_score after delay of "master_score_delay" seconds so if some device gets inaccessible, the slave decreases its master_score first and the resource will no be watched and after this device reappears again the master increases its master_score first this can work only if the master_score_delay is bigger then monitor interval on both master and slave Setting it to 0 will disable this behavior.

    (optional, string, default "30")

SUPPORTED ACTIONS

This resource agent supports the following actions (operations):

start
    Starts the resource. Suggested minimum timeout: 30s.

promote
    Promotes the resource to the Master role. Suggested minimum timeout: 30s.

demote
    Demotes the resource to the Slave role. Suggested minimum timeout: 30s.

notify
    Suggested minimum timeout: 30s.

stop
    Stops the resource. Suggested minimum timeout: 30s.

monitor (Slave role)
    Performs a detailed status check. Suggested minimum timeout: 20s. Suggested interval: 29s.

monitor (Master role)
    Performs a detailed status check. Suggested minimum timeout: 20s. Suggested interval: 60s.

meta-data
    Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5s.

validate-all
    Performs a validation of the resource configuration. Suggested minimum timeout: 30s.

EXAMPLE CRM SHELL

The following is an example configuration for a mpathpersist resource using the crm(8) shell:

    primitive p_mpathpersist ocf:heartbeat:mpathpersist \
      params \
        devs=string \
      op monitor depth="0" timeout="20s" interval="29s" role="Slave" \
      op monitor depth="0" timeout="20s" interval="60s" role="Master"

    ms ms_mpathpersist p_mpathpersist \
      meta notify="true" interleave="true"

EXAMPLE PCS

The following is an example configuration for a mpathpersist resource using pcs(8)

    pcs resource create p_mpathpersist ocf:heartbeat:mpathpersist \
      devs=string \
      op monitor OCF_CHECK_LEVEL="0" timeout="20s" interval="29s" role="Slave" \
      op monitor OCF_CHECK_LEVEL="0" timeout="20s" interval="60s" role="Master" promotable

SEE ALSO

http://clusterlabs.org/

AUTHOR

ClusterLabs contributors (see the resource agent source for information about individual authors)