[Pacemaker] Fencing of movable VirtualDomains

Andrew Beekhof andrew at beekhof.net
Mon Oct 13 07:30:58 CEST 2014


On 7 Oct 2014, at 6:28 pm, Daniel Dehennin <daniel.dehennin at baby-gnu.org> wrote:

> Andrew Beekhof <andrew at beekhof.net> writes:
> 
>>> Maybe not, the collocation should be sufficient, but even without the
>>> orders, unclean VMs fencing is tried with other Stonith devices.
>> 
>> Which other devices?  The config you sent through didnt have any
>> others.
> 
> Sorry I sent it to linux-cluster mailing-list but not here, I attach it.

Is the ipaddr for each device really the same?  If so, why not use a single 'resource'?
Also, 1.1.7 wasn't as smart as 1.1.12 when it came to deciding which fencing device to use.

Likely you'll get the behaviour you want with a version upgrade.

> 
>>> I'll switch to newer corosync/pacemaker and use the pacemaker_remote if
>>> I can manage dlm/cLVM/OCFS2 with it.
>> 
>> No can do.  All three services require corosync on the node. 
> 
> Ok, so the remote is useless in my case, but upgrading seems required[1]
> in my case since wheezy software stack looks to old.

yep

> 
> Thanks.
> 
> Footnotes: 
> [1]  http://article.gmane.org/gmane.linux.redhat.cluster/22963
> 
> -- 
> Daniel Dehennin
> Récupérer ma clef GPG: gpg --recv-keys 0xCC1E9E5B7A6FE2DF
> Fingerprint: 3E69 014E 5C23 50E8 9ED6  2AAD CC1E 9E5B 7A6F E2DF
> 
> node nebula1
> node nebula2
> node nebula3
> node one
> node quorum \
> 	attributes standby="on"
> primitive ONE-Frontend ocf:heartbeat:VirtualDomain \
> 	params config="/var/lib/one/datastores/one/one.xml" \
> 	op start interval="0" timeout="90" \
> 	op stop interval="0" timeout="100" \
> 	meta target-role="Stopped"
> primitive ONE-OCFS2-datastores ocf:heartbeat:Filesystem \
> 	params device="/dev/one-fs/datastores" directory="/var/lib/one/datastores" fstype="ocfs2" \
> 	op start interval="0" timeout="90" \
> 	op stop interval="0" timeout="100" \
> 	op monitor interval="20" timeout="40"
> primitive ONE-vg ocf:heartbeat:LVM \
> 	params volgrpname="one-fs" \
> 	op start interval="0" timeout="30" \
> 	op stop interval="0" timeout="30" \
> 	op monitor interval="60" timeout="30"
> primitive Quorum-Node ocf:heartbeat:VirtualDomain \
> 	params config="/var/lib/libvirt/qemu/pcmk/quorum.xml" \
> 	op start interval="0" timeout="90" \
> 	op stop interval="0" timeout="100" \
> 	meta target-role="Started"
> primitive Stonith-ONE-Frontend stonith:external/libvirt \
> 	params hostlist="one" hypervisor_uri="qemu:///system" pcmk_host_list="one" pcmk_host_check="static-list" \
> 	op monitor interval="30m" \
> 	meta target-role="Started"
> primitive Stonith-Quorum-Node stonith:external/libvirt \
> 	params hostlist="quorum" hypervisor_uri="qemu:///system" pcmk_host_list="quorum" pcmk_host_check="static-list" \
> 	op monitor interval="30m" \
> 	meta target-role="Started"
> primitive Stonith-nebula1-IPMILAN stonith:external/ipmi \
> 	params hostname="nebula1-ipmi" ipaddr="A.B.C.D" interface="lanplus" userid="user" passwd="XXXXX" passwd_method="env" priv="operator" pcmk_host_list="nebula1" pcmk_host_check="static-list" priority="10" \
> 	op monitor interval="30m" \
> 	meta target-role="Started"
> primitive Stonith-nebula2-IPMILAN stonith:external/ipmi \
> 	params hostname="nebula2-ipmi" ipaddr="A.B.C.D" interface="lanplus" userid="user" passwd="XXXXX" passwd_method="env" priv="operator" pcmk_host_list="nebula2" pcmk_host_check="static-list" priority="20" \
> 	op monitor interval="30m" \
> 	meta target-role="Started"
> primitive Stonith-nebula3-IPMILAN stonith:external/ipmi \
> 	params hostname="nebula3-ipmi" ipaddr="A.B.C.D" interface="lanplus" userid="user" passwd="XXXXX" passwd_method="env" priv="operator" pcmk_host_list="nebula3" pcmk_host_check="static-list" priority="30" \
> 	op monitor interval="30m" \
> 	meta target-role="Started"
> primitive clvm ocf:lvm2:clvm \
> 	op start interval="0" timeout="90" \
> 	op stop interval="0" timeout="90" \
> 	op monitor interval="60" timeout="90"
> primitive dlm ocf:pacemaker:controld \
> 	op start interval="0" timeout="90" \
> 	op stop interval="0" timeout="100" \
> 	op monitor interval="60" timeout="60"
> primitive o2cb ocf:pacemaker:o2cb \
> 	params stack="pcmk" daemon_timeout="30" \
> 	op start interval="0" timeout="90" \
> 	op stop interval="0" timeout="100" \
> 	op monitor interval="60" timeout="60"
> group ONE-Storage dlm o2cb clvm ONE-vg ONE-OCFS2-datastores
> clone ONE-Storage-Clone ONE-Storage \
> 	meta interleave="true" target-role="Started"
> location Nebula1-does-not-fence-itslef Stonith-nebula1-IPMILAN \
> 	rule $id="Nebula1-does-not-fence-itslef-rule" inf: #uname ne nebula1
> location Nebula2-does-not-fence-itslef Stonith-nebula2-IPMILAN \
> 	rule $id="Nebula2-does-not-fence-itslef-rule" inf: #uname ne nebula2
> location Nebula3-does-not-fence-itslef Stonith-nebula3-IPMILAN \
> 	rule $id="Nebula3-does-not-fence-itslef-rule" inf: #uname ne nebula3
> location Nodes-with-ONE-Storage ONE-Storage-Clone \
> 	rule $id="Nodes-with-ONE-Storage-rule" inf: #uname eq nebula1 or #uname eq nebula2 or #uname eq nebula3 or #uname eq one
> location ONE-Fontend-fenced-by-hypervisor Stonith-ONE-Frontend \
> 	rule $id="ONE-Fontend-fenced-by-hypervisor-rule" inf: #uname ne quorum or #uname ne one
> location ONE-Frontend-run-on-hypervisor ONE-Frontend \
> 	rule $id="ONE-Frontend-run-on-hypervisor-rule" 40: #uname eq nebula1 \
> 	rule $id="ONE-Frontend-run-on-hypervisor-rule-0" 30: #uname eq nebula2 \
> 	rule $id="ONE-Frontend-run-on-hypervisor-rule-1" 20: #uname eq nebula3
> location Quorum-Node-fenced-by-hypervisor Stonith-Quorum-Node \
> 	rule $id="Quorum-Node-fenced-by-hypervisor-rule" inf: #uname ne quorum or #uname ne one
> location Quorum-Node-run-on-nebula3 Quorum-Node inf: nebula3
> colocation Fence-ONE-Frontend-Locally inf: Stonith-ONE-Frontend ONE-Frontend
> colocation Fence-Quorum-Node-Locally inf: Stonith-Quorum-Node Quorum-Node
> colocation Frontend-without-Quorum -inf: ONE-Frontend Quorum-Node
> order Frontend-after-Storage inf: ONE-Storage-Clone ONE-Frontend
> property $id="cib-bootstrap-options" \
> 	dc-version="1.1.7-ee0730e13d124c3d58f00016c3376a1de5323cff" \
> 	cluster-infrastructure="openais" \
> 	expected-quorum-votes="5" \
> 	stonith-enabled="true" \
> 	last-lrm-refresh="1412337152" \
> 	stonith-timeout="30" \
> 	symmetric-cluster="false"
> rsc_defaults $id="rsc-options" \
> 	resource-stickiness="100"
> _______________________________________________
> Pacemaker mailing list: Pacemaker at oss.clusterlabs.org
> http://oss.clusterlabs.org/mailman/listinfo/pacemaker
> 
> Project Home: http://www.clusterlabs.org
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://bugs.clusterlabs.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://oss.clusterlabs.org/pipermail/pacemaker/attachments/20141013/d5bc09b7/attachment.sig>


More information about the Pacemaker mailing list