Interesting idea! I can confirm that this works. So, I need to monitor the output of "crm_node -q" to check if the current partition has quorum. If the partition doesn't have quorum, I need to set the location constraint according to your example. If the partition gets quorum again, I need to remove the constraint.
This seems almost a bit hacky, but it should work okay. Thank you! It almost a shame that pacemaker doesn't have "demote" as a "no-quorum-policy", but supports "demote" as a "loss-policy" for tickets. Yesterday I had another idea: Maybe I won't use a multistate resource agent but a primitive instead. This way, I will start the resource outside of pacemaker and let the start-action of the OCF-agent set the resource to master and the stop-action sets it to slave. Then I will just use "no-quorum-policy=stop". The downside of this is that I cannot distinguish between a stopped resource and a resource in a slave state using crm_mon.
_______________________________________________ Pacemaker mailing list: Pacemaker@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