Hello, I am having some problems trying to configure a cluster made of 3 servers. Server 1 - resources sql http sip +ip0 Server 2 - resources sql http sip +ip1 Server 3 - resources sip +ip3
What I did since sip depends on sql being started and also the ipX depends on sip started is created a group between: http+sql next created a clone of this group (max-clones=2 and only one per server) with location restrictions on server 1 +2 and -infinity on 3 (let's call this clonesql) Created a clone with sip (let's call this clonesip) with max-clones=3 and only 1 per server Also created a collocation constraint for ip0-3 to start only on clonesip. I've put the whole config bellow. Tested scenarios: Changed on server 3 init script to return 1 on start and stopped sip. The ip3 moved to server 2. And this was correct. Then started it again. Next stopped sql on server 2, since this caused sip on server 3 to stopped (sip on server 3 was connected to sql on server2) this caused an undesired behavior. Instead of moving all the ips on server on it stopped them all, Also clone-sip stopped working on all servers: (I might have done this two times to end up here) My problem is what am i doing wrong here, since if i understood the manual correctly then this shouldn't be happening. Also if I try similar configuration with collocation_set or order_set it does not take them into account. I'm using the public rpms from opensuse repository pacemaker-1.0.3-2.2 for centos 5 x86_64 Here is crm_mon output: Last updated: Tue May 26 14:55:52 2009 Current DC: registration1 - partition with quorum 3 Nodes configured, 2 expected votes 5 Resources configured. ============ Online: [ registration2 registration3 registration1 ] Clone Set: clonesql Resource Group: voip:2 failover-sql:2 (lsb:mysql): ORPHANED Stopped failover-http:2 (lsb:voip): ORPHANED Started registration1 Started: [ registration1 ] Stopped: [ voipnow:0 ] Failed actions: failover-sql:0_monitor_30000 (node=registration2, call=55, rc=7, status=complete): not running failover-sip:2_monitor_15000 (node=registration2, call=76, rc=7, status=complete): not running failover-sip:0_monitor_15000 (node=registration2, call=86, rc=7, status=complete): not running failover-ip0_start_0 (node=registration3, call=13, rc=1, status=complete): unknown error failover-sip:1_monitor_15000 (node=registration3, call=1717, rc=7, status=complete): not running #default vars: crm_attribute --attr-name stonith-enabled --attr-value false crm_attribute --attr-name stop-orphan-resources --attr-value true crm_attribute --attr-name stop-orphan-actions --attr-value true <constraints> <rsc_order id="order-sip" first="clonesip" score="INFINITY" then="clonesql"/> <rsc_location id="loc-1" rsc="clonesql" node="registration1" score="200"/> <rsc_location id="loc-2" rsc="clonesql" node="registration2" score="200"/> <rsc_location id="loc-3" rsc="clonesql" node="registration3" score="-INFINITY"/> <rsc_location id="loc-4" rsc="failover-ip0" node="registration1" score="15000"/> <rsc_location id="loc-5" rsc="failover-ip0" node="registration2" score="1000"/> <rsc_location id="loc-6" rsc="failover-ip0" node="registration3" score="-INFINITY"/> <rsc_location id="loc-7" rsc="failover-ip1" node="registration1" score="1000"/> <rsc_location id="loc-8" rsc="failover-ip1" node="registration2" score="15000"/> <rsc_location id="loc-9" rsc="failover-ip1" node="registration3" score="-INFINITY"/> <rsc_location id="loc-10" rsc="failover-ip2" node="registration1" score="100"/> <rsc_location id="loc-11" rsc="failover-ip2" node="registration2" score="1000"/> <rsc_location id="loc-12" rsc="failover-ip2" node="registration3" score="15000"/> <rsc_colocation id="ip0-colo" rsc="failover-ip0" score="INFINITY" with-rsc="clonesip"/> <rsc_colocation id="ip1-colo" rsc="failover-ip1" score="INFINITY" with-rsc="clonesip"/> <rsc_colocation id="ip2-colo" rsc="failover-ip2" score="INFINITY" with-rsc="clonesip"/> </constraints> <resources> <primitive class="ocf" id="failover-ip0" provider="heartbeat" type="IPaddr"> <instance_attributes id="failover-ip0-instance_attributes"> <nvpair id="failover-ip0-instance_attributes-ip" name="ip" value="192.168.1.3"/> </instance_attributes> <operations> <op id="failover-ip0-monitor-10s" interval="10s" name="monitor" on-fail="stop"/> </operations> <meta_attributes id="failover-ip0-meta_attributes"> <nvpair id="failover-ip0-meta_attributes-target-role" name="target-role" value="Started"/> </meta_attributes> </primitive> <primitive class="ocf" id="failover-ip1" provider="heartbeat" type="IPaddr"> <instance_attributes id="failover-ip1-instance_attributes"> <nvpair id="failover-ip1-instance_attributes-ip" name="ip" value="192.168.1.5"/> </instance_attributes> <operations> <op id="failover-ip1-monitor-10s" interval="10s" name="monitor" on-fail="stop"/> </operations> <meta_attributes id="failover-ip1-meta_attributes"> <nvpair id="failover-ip1-meta_attributes-target-role" name="target-role" value="Started"/> </meta_attributes> </primitive> <primitive class="ocf" id="failover-ip2" provider="heartbeat" type="IPaddr"> <instance_attributes id="failover-ip2-instance_attributes"> <nvpair id="failover-ip2-instance_attributes-ip" name="ip" value="192.168.1.7"/> </instance_attributes> <operations> <op id="failover-ip2-monitor-10s" interval="10s" name="monitor" on-fail="stop"/> </operations> <meta_attributes id="failover-ip2-meta_attributes"> <nvpair id="failover-ip2-meta_attributes-target-role" name="target-role" value="Started"/> </meta_attributes> </primitive> <clone id="clonesip"> <meta_attributes id="clonesip-meta_attributes"> <nvpair id="clonesip-meta_attributes-clone-max" name="clone-max" value="3"/> <nvpair id="clonesip-meta_attributes-globally-unique" name="globally-unique" value="false"/> <nvpair id="clonesip-meta_attributes-clone-node-max" name="clone-node-max" value="1" /> </meta_attributes> <primitive class="lsb" id="failover-sip" type="kamailio"> <operations> <op id="failover-sip-monitor-15s" interval="15s" name="monitor" on-fail="stop"/> </operations> <meta_attributes id="failover-sip-meta_attributes"> <nvpair id="failover-sip-meta_attributes-target-role" name="target-role" value="Started"/> </meta_attributes> </primitive> </clone> <clone id="clonesql"> <meta_attributes id="clonesql-meta_attributes"> <nvpair id="clonesql-meta_attributes-clone-max" name="clone-max" value="2"/> <nvpair id="clonesql-meta_attributes-globally-unique" name="globally-unique" value="false"/> <nvpair id="clonesql-meta_attributes-clone-node-max" name="clone-node-max" value="1" /> </meta_attributes> <group id="voip" > <meta_attributes id="voip-meta_attributes"> <nvpair id="voip-meta_attributes-collocated" name="collocated" value="true"/> </meta_attributes> <primitive class="lsb" id="failover-sql" type="mysql"> <operations> <op id="failover-sql-start" name="start" interval="0" timeout="30s"/> <op id="failover-sql-stop" name="stop" interval="0" timeout="30s"/> <op id="failover-sql-monitor-30s" interval="30s" name="monitor" on-fail="stop"/> </operations> <meta_attributes id="failover-sql-meta_attributes"> <nvpair id="failover-sql-meta_attributes-target-role" name="target-role" value="Started"/> </meta_attributes> </primitive> <primitive class="lsb" id="failover-http" type="voip"> <operations> <op id="failover-http-monitor-15s" interval="15s" name="monitor" on-fail="stop"/> </operations> <meta_attributes id="failover-http-meta_attributes"> <nvpair id="failover-http-meta_attributes-target-role" name="target-role" value="Started"/> </meta_attributes> </primitive> </group> </clone> </resources> _______________________________________________ Pacemaker mailing list Pacemaker@oss.clusterlabs.org http://oss.clusterlabs.org/mailman/listinfo/pacemaker