Hey guys: I've been reading a little bit more about rules but there are certain things that are not so clear to me yet. First, I've created 3 normal resources and one master/slave resource (clusterdataClone). My resources and constraints look like this:
# pcs resource MTA (systemd:postfix): Started nodo1 Web (systemd:httpd): Started nodo1 IPService (ocf::heartbeat:IPaddr2): Started nodo1 Master/Slave Set: clusterdataClone [clusterdata] Masters: [ nodo1 ] Slaves: [ nodo2 ] # pcs constraint show --full Location Constraints: Resource: IPService Enabled on: nodo1 (score:10) (id:location-IPService-nodo1-10) Enabled on: nodo2 (score:9) (id:location-IPService-nodo2-9) Enabled on: nodo1 (score:INFINITY) (role: Started) (id:cli-prefer-IPService) Resource: MTA Enabled on: nodo1 (score:10) (id:location-MTA-nodo1-10) Enabled on: nodo2 (score:9) (id:location-MTA-nodo2-9) Resource: Web Enabled on: nodo1 (score:10) (id:location-Web-nodo1-10) Enabled on: nodo2 (score:9) (id:location-Web-nodo2-9) Resource: clusterdataClone Constraint: location-clusterdataClone Rule: score=INFINITY boolean-op=or (id:location-clusterdataClone-rule) Expression: #uname eq nodo1 (id:location-clusterdataClone-rule-expr) Expression: #uname eq nodo2 (id:location-clusterdataClone-rule-expr-1) Ordering Constraints: Colocation Constraints: Web with IPService (score:INFINITY) (id:colocation-Web-IPService-INFINITY) MTA with IPService (score:INFINITY) (id:colocation-MTA-IPService-INFINITY) clusterdataClone with IPService (score:INFINITY) (rsc-role:Master) (with-rsc-role:Started) (id:colocation-clusterdataClone-IPService-INFINITY) These are the commands I run to create the master/slave resource and its contraints: # pcs cluster cib myfile # pcs -f myfile resource create clusterdata ocf:linbit:drbd drbd_resource=clusterdb op monitor interval=30s role=Master op monitor interval=31s role=Slave # pcs -f myfile resource master clusterdataClone clusterdata master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify=true # pcs -f myfile constraint location clusterdataClone rule score=INFINITY \#uname eq nodo1 or \#uname eq nodo2 # pcs -f myfile constraint colocation add master clusterdataClone with IPService # pcs cluster cib-push myfile So now, my master/slave resource is started as Master in the same node where IPService is already active. So far so good. But the problem is that I can't move IPService from nodo1 to nodo2. When I run... # pcs resource move IPService nodo2 it does nothing but... IPService keeps active on nodo1. Then I tried to remove all my clusterdataClone constraints and repeat the same commands shows lines above (# pcs -f myfile ...) but this time without creating a colocation constraint between clusterdataClone and IPService. When I do some tests again running... # pcs resource move IPService nodo2 well, IPService is moved to nodo2, but clusterdataClone keeps active as Master in node1. I thought it would be promoted as Master in nodo2 and demoted to Slave in nodo1. Do you know why my master/slave resource is not being "moved as master" between nodes? How do I "move" the Master role from nodo1 to nodo2 for clusterdataClone? I want to make nodo2 Primary and nodo1 Secondary but I have no idea how to do this manually (only for testing) I hope someone can help :( Thanks in advance On Mon, Apr 4, 2016 at 4:50 PM, Jason Voorhees <jvoorhe...@gmail.com> wrote: > I started reading "Pacemaker explained" but as it's so depth I didn't > read that section regarding rules yet. I'll take a look at it and test > it before asking anything again. > > Thanks a lot Ken > > On Mon, Apr 4, 2016 at 9:26 AM, Ken Gaillot <kgail...@redhat.com> wrote: >> On 04/02/2016 01:16 AM, Jason Voorhees wrote: >>> Hello guys: >>> >>> I've been recently reading "Pacemaker - Clusters from scratch" and >>> working on a CentOS 7 system with pacemaker 1.1.13, corosync-2.3.4 and >>> drbd84-utils-8.9.5. >>> >>> The PDF instructs how to create a DRBD resource that seems to be >>> automatically started due to a symmetric-cluster setup. >>> >>> However I want to setup an asymmetric-cluster/opt-in >>> (symmetric-cluster=false) but I don't know how to configure a >>> constraint to prefer node1 over node2 to start my DRBD resource as >>> Master (Primary). >> >> I thought location constraints supported role, but that isn't >> documented, so I'm not sure. But it is documented with regard to rules, >> which using pcs might look like: >> >> pcs location clusterdataClone rule \ >> role=master \ >> score=50 \ >> '#uname' eq nodo1 >> >> For a lower-level explanation of rules, see >> http://clusterlabs.org/doc/en-US/Pacemaker/1.1-pcs/html-single/Pacemaker_Explained/index.html#idm140617356537136 >> >>> So far this are my resources and constraints: >>> >>> [root@nodo1 ~]# pcs resource >>> IPService (ocf::heartbeat:IPaddr2): Started nodo1 >>> Web (systemd:httpd): Started nodo1 >>> Master/Slave Set: clusterdataClone [clusterdata] >>> Stopped: [ nodo1 nodo2 ] >>> >>> [root@nodo1 ~]# pcs constraint >>> Location Constraints: >>> Resource: IPService >>> Enabled on: nodo2 (score:50) >>> Enabled on: nodo1 (score:100) >>> Resource: Web >>> Enabled on: nodo2 (score:50) >>> Enabled on: nodo1 (score:100) >>> Ordering Constraints: >>> start IPService then start Web (kind:Mandatory) >>> Colocation Constraints: >>> Web with IPService (score:INFINITY) >>> >>> My current DRBD status: >>> >>> [root@nodo1 ~]# drbdadm role clusterdb >>> 0: Failure: (127) Device minor not allocated >>> additional info from kernel: >>> unknown minor >>> Command 'drbdsetup-84 role 0' terminated with exit code 10 >>> >>> >>> [root@nodo2 ~]# drbdadm role clusterdb >>> 0: Failure: (127) Device minor not allocated >>> additional info from kernel: >>> unknown minor >>> Command 'drbdsetup-84 role 0' terminated with exit code 10 >>> >>> >>> I know that it's possible to configure my cluster as asymmetric and >>> use constraints to avoid a resource running (or becoming master) on >>> certain nodes, but this time I would like to learn how to do it with >>> an opt-in scenario. >>> >>> Thanks in advance for your help. >>> >>> P.D. nodo1 & nodo2 are spanish names for node1 and node2 >>> >>> _______________________________________________ >>> Users mailing list: Users@clusterlabs.org >>> http://clusterlabs.org/mailman/listinfo/users >>> >>> Project Home: http://www.clusterlabs.org >>> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >>> Bugs: http://bugs.clusterlabs.org >>> >> >> >> _______________________________________________ >> Users mailing list: Users@clusterlabs.org >> http://clusterlabs.org/mailman/listinfo/users >> >> Project Home: http://www.clusterlabs.org >> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> Bugs: http://bugs.clusterlabs.org _______________________________________________ Users mailing list: Users@clusterlabs.org http://clusterlabs.org/mailman/listinfo/users Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://bugs.clusterlabs.org