<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi,<div><br></div><div>I'm looking for the correct constraint setup to use for the following resource configuration:</div><div>--snip--</div><div><div>node 1: <a href="http://tgtnode2.parodyne.com">tgtnode2.parodyne.com</a></div><div>node 2: <a href="http://tgtnode1.parodyne.com">tgtnode1.parodyne.com</a></div></div><div><div>primitive p_iscsi_tgtnode1 iscsi \</div><div>        params portal=172.16.0.12 target=tgtnode2_redirect udev=no try_recovery=true \</div><div>        op start interval=0 timeout=120 \</div><div>        op stop interval=0 timeout=120 \</div><div>        op monitor interval=120 timeout=30</div><div>primitive p_iscsi_tgtnode2 iscsi \</div><div>        params portal=172.16.0.11 target=tgtnode1_redirect udev=no try_recovery=true \</div><div>        op start interval=0 timeout=120 \</div><div>        op stop interval=0 timeout=120 \</div><div>        op monitor interval=120 timeout=30</div></div><div><div>primitive p_scst ocf:esos:scst \</div><div>        params alua=false \</div><div>        op start interval=0 timeout=120 \</div><div>        op stop interval=0 timeout=90 \</div><div>        op monitor interval=30 timeout=60</div></div><div><div>clone clone_scst p_scst \</div><div>        meta interleave=true target-role=Started</div></div><div><div>location l_iscsi_tgtnode1 p_iscsi_tgtnode1 role=Started -inf: <a href="http://tgtnode2.parodyne.com">tgtnode2.parodyne.com</a></div><div>location l_iscsi_tgtnode2 p_iscsi_tgtnode2 role=Started -inf: <a href="http://tgtnode1.parodyne.com">tgtnode1.parodyne.com</a></div></div><div><div>property cib-bootstrap-options: \</div><div>        have-watchdog=false \</div><div>        dc-version=1.1.16-94ff4df \</div><div>        cluster-infrastructure=corosync \</div><div>        stonith-enabled=false \</div><div>        cluster-name=redirect_test \</div><div>        last-lrm-refresh=1538405190</div></div><div>--snip--</div><div><br></div><div>The gist of it is the 'ocf:esos:scst' provides an iSCSI target interface that each opposing node connects to (just a two node cluster) via 'ocf:heartbeat:iscsi' on each node. I have location constraints in the above configuration that force the "p_iscsi_tgtnode1" and "p_iscsi_tgtnode2" primitives to the correct node, but what I'm lacking is a colocation constraint that prevents "p_iscsi_tgtnode1" from starting unless "clone_scst" is running on the opposing node and vice versa.</div><div><br></div><div>Is a configuration like this possible? Without creating two primitives for 'ocf:esos:scst' and ditching the clone rule? Or is the best route creating two separate primitives for 'ocf:esos:scst' and then adding more constraints to prevent these from running on the same node and forcing their node "ownership"?</div><div><br></div><div>Any help / guidance / advice would be greatly appreciated.</div><div><br></div><div><br></div><div>Thanks,</div><div><br>Marc</div></div></div></div></div></div></div></div></div></div></div></div>