[Linux-HA] What is the correct way to create the cib.xml?

Michael Dengler michael.dengler at gmail.com
Tue Sep 4 15:03:07 MDT 2007


Hi,

Every day I get a little closer to a stable cluster ;-)

I'm trying to automate the configuration of a cluster and am having some
unpredictable behavior. I have a script that gets user input for the config
parameters for the cluster, writes that to haresources, runs
haresources2cib.py to create the cib.xml and then replaces the default
values for resource_stickiness with INFINITY and -INFINITY. This is
performed on both nodes.

The odd behavior is that when heartbeat is started on node1 then
node2....node2 starts all of the resources even though node1 is configured
to be the preferred node.

If I start heartbeat on node1 and wait for it to start the resources before
starting heartbeat on node2, the resources stay on node1.

Here is my cib:

-------------------------------

<cib admin_epoch="0" have_quorum="true" generated="true" num_peers="2"
cib_feature_revision="1.3" ccm_transition="2"
dc_uuid="c18c2a51-bf31-4a39-897c-184ae37c8c13" epoch="4" num_updates="58"
cib-last-written="Tue Aug 14 20:48:35 2007">
   <configuration>
     <crm_config>
       <cluster_property_set id="cib-bootstrap-options">
         <attributes>
           <nvpair id="cib-bootstrap-options-symmetric_cluster"
name="symmetric_cluster" value="true"/>
           <nvpair id="cib-bootstrap-options-no_quorum_policy"
name="no_quorum_policy" value="stop"/>
           <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"/>
           <nvpair id="cib-bootstrap-options-stonith_enabled"
name="stonith_enabled" value="false"/>
           <nvpair id="cib-bootstrap-options-stonith_action"
name="stonith_action" value="reboot"/>
           <nvpair id="cib-bootstrap-options-stop_orphan_resources"
name="stop_orphan_resources" value="true"/>
           <nvpair id="cib-bootstrap-options-stop_orphan_actions"
name="stop_orphan_actions" value="true"/>
           <nvpair id="cib-bootstrap-options-remove_after_stop"
name="remove_after_stop" value="false"/>
           <nvpair id="cib-bootstrap-options-short_resource_names"
name="short_resource_names" value="true"/>
           <nvpair id="cib-bootstrap-options-transition_idle_timeout"
name="transition_idle_timeout" value="5min"/>
           <nvpair id="cib-bootstrap-options-default_action_timeout"
name="default_action_timeout" value="5s"/>
           <nvpair id="cib-bootstrap-options-is_managed_default"
name="is_managed_default" value="true"/>
         </attributes>
       </cluster_property_set>
     </crm_config>
     <nodes>
       <node id="5236009f-2125-407a-92ea-6e5f615ec564" uname="node1"
type="normal"/>
       <node id="c18c2a51-bf31-4a39-897c-184ae37c8c13" uname="node2"
type="normal"/>
     </nodes>
     <resources>
       <group id="group_1">
         <primitive class="ocf" id="IPaddr_10_123_100_153"
provider="heartbeat" type="IPaddr">
           <operations>
             <op id="IPaddr_10_123_100_153_mon" interval="5s" name="monitor"
timeout="5s"/>
           </operations>
           <instance_attributes id="IPaddr_10_123_100_153_inst_attr">
             <attributes>
               <nvpair id="IPaddr_10_123_100_153_attr_0" name="ip" value="
10.123.100.153"/>
             </attributes>
           </instance_attributes>
         </primitive>
         <primitive class="lsb" id="httpd_2" provider="heartbeat"
type="httpd">
           <operations>
             <op id="httpd_2_mon" interval="120s" name="monitor"
timeout="60s"/>
           </operations>
         </primitive>
         <primitive class="lsb" id="ha_command_3" provider="heartbeat"
type="ha_command">
           <operations>
             <op id="ha_command_3_mon" interval="120s" name="monitor"
timeout="60s"/>
           </operations>
         </primitive>
       </group>
     </resources>
     <constraints>
       <rsc_location id="rsc_location_group_1" rsc="group_1">
         <rule id="prefered_location_group_1" score="100">
           <expression attribute="#uname"
id="prefered_location_group_1_expr" operation="eq" value="node1"/>
         </rule>
       </rsc_location>
     </constraints>
   </configuration>
 </cib>

-----------------------------

Any help is greatly appreciated.

Thanks

Mike


More information about the Linux-HA mailing list