Hello,
I have created simple 2-node cluster with 4 drbd multi-state resources
and xen DomU on it with enabled stonith and setting:
default_resource_stickiness=INFINITY and
default_resource_failure_stickiness=-INFINITY.
The idea for cluster working is:
1. promote all drdd resources on node sles236 and start drbd resources
on node sles238. (works OK)
2. when failure of drbd occurs -> promote all drbd resources on
sles238 and reboot sles236.
3. when sles236 join back to the cluster after reboot, leave drbd
promoted on sles238.
I thought that setting: default_resource_stickiness=INFINITY and
default_resource_failure_stickiness=-INFINITY guarantee this bahaviour
but in fact I have:
- when sles236 join back to the cluster after reboot, all drbd
resources are demoted on sles238 and promoted on sles36. Where is
mistake in my cib.xml?
<cib generated="true" admin_epoch="0" epoch="24" num_updates="1"
have_quorum="true" ignore_dtd="false" ccm_transition="2" num_peers="2"
cib_feature_revision="2.0"
dc_uuid="2be27509-d191-4a9b-8a98-dee1f01d152d" cib-last-written="Mon
Dec 10 11:47:17 2007">
<configuration>
<crm_config>
<cluster_property_set id="cib-bootstrap-options">
<attributes>
<nvpair id="cib-bootstrap-options-dc-version"
name="dc-version" value="2.1.2-node:
b42542bc75cb615fbf1c9674085f8c73f14145ca"/>
<nvpair
id="cib-bootstrap-options-default-resource-stickiness"
name="default-resource-stickiness" value="INFINITY"/>
<nvpair
id="cib-bootstrap-options-default-resource-failure-stickiness"
name="default-resource-failure-stickiness" value="-INFINITY"/>
</attributes>
</cluster_property_set>
<cluster_property_set id="cibbootstrap">
<attributes>
<nvpair id="cibbootstrap-01" name="transition_idle_timeout"
value="60"/>
<nvpair id="cibbootstrap-02"
name="default_resource_stickiness" value="INFINITY"/>
<nvpair id="cibbootstrap-03"
name="default_resource_failure_stickiness" value="-INFINITY"/>
<nvpair id="cibbootstrap-04" name="stonith_enabled" value="true"/>
<nvpair id="cibbootstrap-05" name="stonith_action" value="reboot"/>
<nvpair id="cibbootstrap-06" name="symmetric_cluster" value="true"/>
<nvpair id="cibbootstrap-07" name="no_quorum_policy" value="stop"/>
<nvpair id="cibbootstrap-08" name="stop_orphan_resources"
value="true"/>
<nvpair id="cibbootstrap-09" name="stop_orphan_actions"
value="true"/>
<nvpair id="cibbootstrap-10" name="is_managed_default" value="true"/>
</attributes>
</cluster_property_set>
</crm_config>
<nodes>
<node id="2be27509-d191-4a9b-8a98-dee1f01d152d" uname="sles238"
type="normal"/>
<node id="65c27378-0ccc-492e-862d-c7c5bf261324" uname="sles236"
type="normal"/>
</nodes>
<resources>
<clone id="CL_stonithset_sles236">
<instance_attributes id="CL_stonithset_sles236">
<attributes>
<nvpair id="CL_stonithset_sles236_clone_node_max"
name="clone_node_max" value="1"/>
</attributes>
</instance_attributes>
<primitive id="CL_stonith_sles236" class="stonith"
type="external/riloe" provider="heartbeat">
<operations>
<op name="monitor" interval="30s" timeout="20s"
id="CL_stonith_sles236_monitor"/>
<op name="start" timeout="60s" id="CL_stonith_sles236_start"/>
</operations>
<instance_attributes id="CL_stonith_sles236">
<attributes>
<nvpair id="CL_stonith_sles236_hostlist"
name="hostlist" value="sles236"/>
<nvpair id="CL_stonith_sles236_RI_HOST" name="RI_HOST"
value="sles236"/>
<nvpair id="CL_stonith_sles236_RI_HOSTRI"
name="RI_HOSTRI" value="10.150.72.84"/>
<nvpair id="CL_stonith_sles236_RI_LOGIN"
name="RI_LOGIN" value="hacluster"/>
<nvpair id="CL_stonith_sles236_RI_PASSWORD"
name="RI_PASSWORD" value="t2reboot"/>
</attributes>
</instance_attributes>
</primitive>
</clone>
<clone id="CL_stonithset_sles238">
<instance_attributes id="CL_stonithset_sles238">
<attributes>
<nvpair id="CL_stonithset_sles238_clone_node_max"
name="clone_node_max" value="1"/>
</attributes>
</instance_attributes>
<primitive id="CL_stonith_sles238" class="stonith"
type="external/riloe" provider="heartbeat">
<operations>
<op name="monitor" interval="30s" timeout="20s"
id="CL_stonith_sles238_monitor"/>
<op name="start" timeout="60s" id="CL_stonith_sles238_start"/>
</operations>
<instance_attributes id="CL_stonith_sles238">
<attributes>
<nvpair id="CL_stonith_sles238_hostlist"
name="hostlist" value="sles238"/>
<nvpair id="CL_stonith_sles238_RI_HOST" name="RI_HOST"
value="sles238"/>
<nvpair id="CL_stonith_sles238_RI_HOSTRI"
name="RI_HOSTRI" value="10.150.72.82"/>
<nvpair id="CL_stonith_sles238_RI_LOGIN"
name="RI_LOGIN" value="hacluster"/>
<nvpair id="CL_stonith_sles238_RI_PASSWORD"
name="RI_PASSWORD" value="t2reboot"/>
</attributes>
</instance_attributes>
</primitive>
</clone>
<master_slave id="ms-drbd0">
<meta_attributes id="ma-ms-drbd0">
<attributes>
<nvpair id="ma-ms-drbd0-1" name="clone_max" value="2"/>
<nvpair id="ma-ms-drbd0-2" name="clone_node_max" value="1"/>
<nvpair id="ma-ms-drbd0-3" name="master_max" value="1"/>
<nvpair id="ma-ms-drbd0-4" name="master_node_max" value="1"/>
<nvpair id="ma-ms-drbd0-5" name="notify" value="yes"/>
<nvpair id="ma-ms-drbd0-6" name="globally_unique" value="false"/>
<nvpair id="ma-ms-drbd0-7" name="target_role" value="started"/>
</attributes>
</meta_attributes>
<primitive id="drbd0" class="ocf" provider="heartbeat" type="drbd">
<instance_attributes id="ia-drbd0">
<attributes>
<nvpair id="ia-drbd0-1" name="drbd_resource" value="tr2"/>
</attributes>
</instance_attributes>
<operations>
<op id="drbd0_mon_0" name="monitor" interval="12s" timeout="5s"/>
<op id="drbd0_mon_1" name="monitor" interval="10s"
timeout="5s" role="Master" on_fail="fence"/>
</operations>
</primitive>
</master_slave>
<master_slave id="ms-drbd1">
<meta_attributes id="ma-ms-drbd1">
<attributes>
<nvpair id="ma-ms-drbd1-1" name="clone_max" value="2"/>
<nvpair id="ma-ms-drbd1-2" name="clone_node_max" value="1"/>
<nvpair id="ma-ms-drbd1-3" name="master_max" value="1"/>
<nvpair id="ma-ms-drbd1-4" name="master_node_max" value="1"/>
<nvpair id="ma-ms-drbd1-5" name="notify" value="yes"/>
<nvpair id="ma-ms-drbd1-6" name="globally_unique" value="false"/>
<nvpair id="ma-ms-drbd1-7" name="target_role" value="started"/>
</attributes>
</meta_attributes>
<primitive id="drbd1" class="ocf" provider="heartbeat" type="drbd">
<instance_attributes id="ia-drbd1">
<attributes>
<nvpair id="ia-drbd1-1" name="drbd_resource" value="tr2-var"/>
</attributes>
</instance_attributes>
<operations>
<op id="drbd1_mon_0" name="monitor" interval="12s" timeout="5s"/>
<op id="drbd1_mon_1" name="monitor" interval="10s"
timeout="5s" role="Master" on_fail="fence"/>
</operations>
</primitive>
</master_slave>
<master_slave id="ms-drbd2">
<meta_attributes id="ma-ms-drbd2">
<attributes>
<nvpair id="ma-ms-drbd2-1" name="clone_max" value="2"/>
<nvpair id="ma-ms-drbd2-2" name="clone_node_max" value="1"/>
<nvpair id="ma-ms-drbd2-3" name="master_max" value="1"/>
<nvpair id="ma-ms-drbd2-4" name="master_node_max" value="1"/>
<nvpair id="ma-ms-drbd2-5" name="notify" value="yes"/>
<nvpair id="ma-ms-drbd2-6" name="globally_unique" value="false"/>
<nvpair id="ma-ms-drbd2-7" name="target_role" value="started"/>
</attributes>
</meta_attributes>
<primitive id="drbd2" class="ocf" provider="heartbeat" type="drbd">
<instance_attributes id="ia-drbd2">
<attributes>
<nvpair id="ia-drbd2-1" name="drbd_resource" value="tr2-log"/>
</attributes>
</instance_attributes>
<operations>
<op id="drbd2_mon_0" name="monitor" interval="12s" timeout="5s"/>
<op id="drbd2_mon_1" name="monitor" interval="10s"
timeout="5s" role="Master" on_fail="fence"/>
</operations>
</primitive>
</master_slave>
<master_slave id="ms-drbd3">
<meta_attributes id="ma-ms-drbd3">
<attributes>
<nvpair id="ma-ms-drbd3-1" name="clone_max" value="2"/>
<nvpair id="ma-ms-drbd3-2" name="clone_node_max" value="1"/>
<nvpair id="ma-ms-drbd3-3" name="master_max" value="1"/>
<nvpair id="ma-ms-drbd3-4" name="master_node_max" value="1"/>
<nvpair id="ma-ms-drbd3-5" name="notify" value="yes"/>
<nvpair id="ma-ms-drbd3-6" name="globally_unique" value="false"/>
<nvpair id="ma-ms-drbd3-7" name="target_role" value="started"/>
</attributes>
</meta_attributes>
<primitive id="drbd3" class="ocf" provider="heartbeat" type="drbd">
<instance_attributes id="ia-drbd3">
<attributes>
<nvpair id="ia-drbd3-1" name="drbd_resource" value="home_tr"/>
</attributes>
</instance_attributes>
<operations>
<op id="drbd3_mon_0" name="monitor" interval="12s" timeout="5s"/>
<op id="drbd3_mon_2" name="monitor" interval="10s"
timeout="5s" role="Master" on_fail="fence"/>
</operations>
</primitive>
</master_slave>
<primitive id="xen_tr2" class="ocf" type="Xen" provider="heartbeat">
<operations>
<op name="monitor" interval="10s" timeout="5s"
prereq="nothing" id="xen-op-01"/>
</operations>
<instance_attributes id="xen_tr2_instance_attrs">
<attributes>
<nvpair id="xen_tr2_target_role" name="target_role"
value="started"/>
<nvpair name="xmfile" value="/etc/xen/vm/tr2"
id="fcdc9c85-67ae-4b43-9f62-374a09fd09c4"/>
</attributes>
</instance_attributes>
</primitive>
</resources>
<constraints>
<rsc_location id="pref_location_drbd0" rsc="ms-drbd0">
<rule id="sles236_location_drbd0" score="100"
boolean_op="and" role="Master">
<expression attribute="#uname" id="drbd0_on_sles236"
operation="eq" value="sles236"/>
</rule>
</rsc_location>
<rsc_location id="pref_location_drbd1" rsc="ms-drbd1">
<rule id="sles236_location_drbd1" score="100"
boolean_op="and" role="Master">
<expression attribute="#uname" id="drbd1_on_sles236"
operation="eq" value="sles236"/>
</rule>
</rsc_location>
<rsc_location id="pref_location_drbd2" rsc="ms-drbd2">
<rule id="sles236_location_drbd2" score="100"
boolean_op="and" role="Master">
<expression attribute="#uname" id="drbd2_on_sles236"
operation="eq" value="sles236"/>
</rule>
</rsc_location>
<rsc_location id="pref_location_drbd3" rsc="ms-drbd3">
<rule id="sles236_location_drbd3" score="100"
boolean_op="and" role="Master">
<expression attribute="#uname" id="drbd3_on_sles236"
operation="eq" value="sles236"/>
</rule>
</rsc_location>
<rsc_order id="drbd0_before_tr2_xen" from="xen_tr2"
action="start" to="ms-drbd0" to_action="promote"/>
<rsc_order id="drbd1_before_tr2_xen" from="xen_tr2"
action="start" to="ms-drbd1" to_action="promote"/>
<rsc_order id="drbd2_before_tr2_xen" from="xen_tr2"
action="start" to="ms-drbd2" to_action="promote"/>
<rsc_order id="drbd3_before_tr2_xen" from="xen_tr2"
action="start" to="ms-drbd3" to_action="promote"/>
<rsc_colocation id="col_xen_drbd0_master" from="xen_tr2"
from_role="Started" to="ms-drbd0" to_role="Master" score="INFINITY"/>
<rsc_colocation id="col_xen_drbd1_master" from="xen_tr2"
from_role="Started" to="ms-drbd1" to_role="Master" score="INFINITY"/>
<rsc_colocation id="col_xen_drbd2_master" from="xen_tr2"
from_role="Started" to="ms-drbd2" to_role="Master" score="INFINITY"/>
<rsc_colocation id="col_xen_drbd3_master" from="xen_tr2"
from_role="Started" to="ms-drbd3" to_role="Master" score="INFINITY"/>
</constraints>
</configuration>
</cib>
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems