[ClusterLabs] SCSI persistant reservation fencing

Vladimir-M. Obelic v at obeli.ch
Tue Jun 30 08:37:12 EDT 2015


Hi,

I'm trialling SLES 12 w/ HAE to run a Fileserver cluster consisting of
two nodes. Idea was to use SCSI persistant reservation as a fencing
method using the fence_scsi script from stonith fence agents. Two
nodes (a, b) are connected via FC to the same LUN which is then
exported via NFS from the active node only.

The issue is with fence_scsi as crm fails/complains that nodename/key
isn't supplied.

    primitive storage-fence stonith:fence_scsi \
            params action=off devices="/dev/mapper/mpath_test"  \
            op monitor interval=60s timeout=0s

I end up with:

storage-fence_start_0 on fs009a 'unknown error' (1): call=18,
status=Error, last-rc-change='Wed Jun 17 00:51:40 2015', queued=0ms,
exec=1093ms
storage-fence_start_0 on fs009b 'unknown error' (1): call=18,
status=Error, last-rc-change='Wed Jun 17 00:56:42 2015', queued=0ms,
exec=1101ms

and

    2015-06-17T01:34:29.156751+02:00 fs009a stonithd[25547]:  warning:
log_operation: storage-fence:25670 [ ERROR:root:Failed: nodename or
key is required ]
    2015-06-17T01:34:29.156988+02:00 fs009a stonithd[25547]:  warning:
log_operation: storage-fence:25670 [  ]
    2015-06-17T01:34:29.157234+02:00 fs009a stonithd[25547]:  warning:
log_operation: storage-fence:25670 [ ERROR:root:Please use '-h' for
usage ]
    2015-06-17T01:34:29.157460+02:00 fs009a stonithd[25547]:  warning:
log_operation: storage-fence:25670 [  ]

Now If nodename is supplied then it doesn't complain. But then I don't
understand the fencing configuration. Should I setup two
stonith:fence_scsi resources each "stickied" to each of the two nodes?
How and when is the stonith resource run when fencing should occur,
and what action parameter for fence_scsi should be configured?

According to fence_scsi resource info page, only the 'action'
parameter is obligatory, while the 'nodename' and 'key' parameters
aren't.
Yet without those, it fails. Seems to me this is a bug?
I've seen a similar issue in RHEL: https://access.redhat.com/solutions/1421063

This is an example from RHEL that takes care of the whole thing, no
additional constraints (and it works!)

 pcs stonith create my-scsi-shooter fence_scsi devices=/dev/sda meta
provides=unfencing

(https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Configuring_the_Red_Hat_High_Availability_Add-On_with_Pacemaker/s1-unfence-HAAR.html)

Note that SLES12 still uses crm while RHEL uses pcs. Also in SLES the
meta attribute 'provides' doesn't exist. Is there a way to translate
the RHEL pcs command to SLES?


Here the complete config:
crm config http://pastebin.com/mqxge6jm
corosync.conf http://pastebin.com/M5sr7htC

corosync 2.3.3
pacemaker 1.1.12

Any help appreciated!

Regards,
Vladimir




More information about the Users mailing list