On Dec 6, 2007, at 1:39 PM, Dominik Klein wrote:
Hi
sorry I have to bother again about score calculation but I came
across something I don't understand and that might be a bug.
I have a master-slave drbd resource called ms-drbd (primitive is
called drbd2) and a group named testdb (4 primitives, "mount" being
the first primitive).
pingd multiplier is 300 (5 ping nodes)
default-resource-stickiness is 200
And these are my constraints:
<constraints>
<rsc_order id="drbd2_before_testdb" from="testdb"
action="start" to="ms-drbd2" to_action="promote"/>
<rsc_colocation id="testdb_on_drbd2" to="ms-drbd2"
to_role="master" from="testdb" score="300"/>
</constraints>
When I look at the scores, I see
drbd2:0 node1 0
Okay.
drbd2:0 node2 676
Weird
This looks like the crm_master value from the drbd OCF RA plus
stickiness times (number_of_group_items - 1).
that would make sense.
How I come to think this has to do with the group? Because if I add
another item to the group, the score increases by 1 x stickiness.
Guess this shouldn't be, should it?
it should.
the group needs to go with the master... so it makes sense that you
should take the groups location preferences into account when deciding
where to place and promote drbd
drbd2:1 node1 76
crm_master value from drbd OCF RA
drbd2:1 node2 -infinity
Okay.
mount node1 0
Okay.
mount node2 1100
300 (constraint)
+ 4 x 300 (pingd)
Regards
Dominik
Here's the cib.xml
<configuration>
<crm_config>
<cluster_property_set id="cib-bootstrap-options">
<attributes>
<nvpair name="no-quorum-policy" value="stop" id="no-quorum-
policy"/>
<nvpair name="symmetric-cluster" value="true"
id="symmetric-cluster"/>
<nvpair name="stonith-enabled" value="false" id="stonith-
enabled"/>
<nvpair name="stonith-action" value="reboot" id="stonith-
action"/>
<nvpair name="default-resource-stickiness" value="200"
id="default-resource-stickiness"/>
<nvpair name="default-resource-failure-stickiness"
value="-100" id="default-resource-failure-stickiness"/>
<nvpair name="is-managed-default" value="true" id="is-
managed-default"/>
<nvpair name="default-action-timeout" value="20s"
id="default-action-timeout"/>
<nvpair name="stop-orphan-resources" value="true" id="stop-
orphan-resources"/>
<nvpair name="stop-orphan-actions" value="true" id="stop-
orphan-actions"/>
<nvpair name="remove-after-stop" value="false" id="remove-
after-stop"/>
<nvpair name="pe-error-series-max" value="-1" id="pe-error-
series-max"/>
<nvpair name="pe-warn-series-max" value="-1" id="pe-warn-
series-max"/>
<nvpair name="pe-input-series-max" value="-1" id="pe-input-
series-max"/>
<nvpair name="startup-fencing" value="true" id="startup-
fencing"/>
</attributes>
</cluster_property_set>
</crm_config>
<resources>
<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="drbd2"/>
</attributes>
</instance_attributes>
<operations>
<op id="op-ms-drbd2-1" name="monitor"
interval="5s" timeout="5s" start_delay="30s" role="Master"/>
<op id="op-ms-drbd2-2" name="monitor"
interval="6s" timeout="5s" start_delay="30s" role="Slave"/>
</operations>
</primitive>
</master_slave>
<group id="testdb">
<meta_attributes id="ma-testdb">
<attributes>
<nvpair id="ma-testdb-1"
name="target_role" value="started"/>
</attributes>
</meta_attributes>
<primitive id="mount" class="ocf" type="filesystem"
provider="heartbeat">
...
</primitive>
<primitive id="postgres" class="ocf" type="pgsql"
provider="heartbeat">
...
</primitive>
<primitive id="masterip" class="ocf" type="IPaddr2"
provider="heartbeat">
...
</primitive>
<primitive id="slon" class="ocf" type="dkcustom"
provider="dk">
...
</primitive>
</group>
</resources>
<constraints>
<rsc_order id="drbd2_before_testdb" from="testdb"
action="start" to="ms-drbd2" to_action="promote"/>
<rsc_colocation id="testdb_on_drbd2" to="ms-drbd2"
to_role="master" from="testdb" score="300"/>
</constraints>
</configuration>
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems