Dear all I am encountering an issue with colocation constraints.
I have created a 4 nodes cluster (3 "main" and 1 "spare") with 3 resources and I wish to have each resource run only on its own node (or on the spare) and resources must never run together on the spare. I understand that this implies a definition of priorities between resources should two nodes fail at the same time. This is the desired behavior. Resource 1 is more important than resource 2 which is more important than resource 3. And thus in the case of multiple nodes failure, the spare node must be running the higher priority resource even if this means the lower priority resources will be stopped. When the resources are created with the adequate priorities but without colocation constraint they are indeed running on each "main" node as expected. Trouble arises when I start adding the colocation constraints. If I add one colocation constraint (resource3 cannot run with resource2), resources remain correctly on their node. But as soon as I add a second colocation constraint (resource2 cannot run with resource1), resource1 switches to the spare node because the resource1 allocation score on node1 becomes -INFINITY and I cannot understand why ? Setup and commands output below Thank you **************** Resources definition, opt-in cluster # pcs property set symmetric-cluster=false # pcs resource create TestResourceNode1 ocf:pacemaker:Dummy op monitor interval=120s # pcs constraint location TestResourceNode1 prefers node1=100 # pcs constraint location TestResourceNode1 prefers nodespare=80 # pcs resource create TestResourceNode2 ocf:pacemaker:Dummy op monitor interval=120s # pcs constraint location TestResourceNode2 prefers node2=50 # pcs constraint location TestResourceNode2 prefers nodespare=30 # pcs resource create TestResourceNode3 ocf:pacemaker:Dummy op monitor interval=120s # pcs constraint location TestResourceNode3 prefers node3=10 # pcs constraint location TestResourceNode3 prefers nodespare=3 # crm_simulate -sL Current cluster status: Online: [ node1 node2 node3 nodespare ] TestResourceNode1 (ocf::pacemaker:Dummy): Started node1 TestResourceNode2 (ocf::pacemaker:Dummy): Started node2 TestResourceNode3 (ocf::pacemaker:Dummy): Started node3 Allocation scores: native_color: TestResourceNode1 allocation score on node1: 100 native_color: TestResourceNode1 allocation score on nodespare: 80 native_color: TestResourceNode2 allocation score on node2: 50 native_color: TestResourceNode2 allocation score on nodespare: 30 native_color: TestResourceNode3 allocation score on node3: 10 native_color: TestResourceNode3 allocation score on nodespare: 3 # pcs constraint colocation add TestResourceNode3 with TestResourceNode2 score=-INFINITY # crm_simulate -sL Current cluster status: Online: [ node1 node2 node3 nodespare ] TestResourceNode1 (ocf::pacemaker:Dummy): Started node1 TestResourceNode2 (ocf::pacemaker:Dummy): Started node2 TestResourceNode3 (ocf::pacemaker:Dummy): Started node3 Allocation scores: native_color: TestResourceNode1 allocation score on node1: 100 native_color: TestResourceNode1 allocation score on nodespare: 80 native_color: TestResourceNode2 allocation score on node2: 50 native_color: TestResourceNode2 allocation score on nodespare: 27 native_color: TestResourceNode3 allocation score on node3: 10 native_color: TestResourceNode3 allocation score on nodespare: 3 # pcs constraint colocation add TestResourceNode2 with TestResourceNode1 score=-INFINITY # crm_simulate -sL Current cluster status: Online: [ node1 node2 node3 nodespare ] TestResourceNode1 (ocf::pacemaker:Dummy): Started nodespare TestResourceNode2 (ocf::pacemaker:Dummy): Started node2 TestResourceNode3 (ocf::pacemaker:Dummy): Started node3 Allocation scores: native_color: TestResourceNode1 allocation score on node1: -INFINITY native_color: TestResourceNode1 allocation score on nodespare: 53 native_color: TestResourceNode2 allocation score on node2: 50 native_color: TestResourceNode2 allocation score on nodespare: -INFINITY native_color: TestResourceNode3 allocation score on node3: 10 native_color: TestResourceNode3 allocation score on nodespare: 3 -- ------------------- Thomas Singleton ACIC [email protected] +32 (0) 65 39 43 80 _______________________________________________ Manage your subscription: https://lists.clusterlabs.org/mailman/listinfo/users ClusterLabs home: https://www.clusterlabs.org/
