ocf_heartbeat_sg_persist - Manages SCSI PERSISTENT
RESERVATIONS
sg_persist [start | stop | monitor | promote | demote |
meta-data | validate-all]
This resource agent manages SCSI PERSISTENT RESERVATIONS.
"sg_persist" from sg3_utils 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-rk ) on each
device in the "devs" list. Master reservs all devices from
"devs" list with reservation "--prout-type" value from
"reservation_type" parameter.
binary
The name of the binary that manages the resource.
(optional, string, default "sg_persist")
devs
Device list. Multiple devices can be listed with blank
space as separator. Shell wildcars are allowed.
(required, string, no default)
required_devs_nof
Minimum number of "working" devices from device
list 1) existing 2) "sg_persist --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 then
"required_devs_nof". 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 sg_persist 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")
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.
The following is an example configuration for a sg_persist
resource using the crm(8) shell:
primitive p_sg_persist ocf:heartbeat:sg_persist \
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_sg_persist p_sg_persist \
meta notify="true" interleave="true"
The following is an example configuration for a sg_persist
resource using pcs(8)
pcs resource create p_sg_persist ocf:heartbeat:sg_persist \
devs=string \
op monitor depth="0" timeout="20s" interval="29s" role="Slave" \
op monitor depth="0" timeout="20s" interval="60s" role="Master" --master
ClusterLabs contributors (see the resource agent source for
information about individual authors)