[Linux-HA] DBRD - split brain - and HA is happily migrating
Thomas Glanzmann
thomas at glanzmann.de
Tue Jan 1 14:34:09 MST 2008
Hello,
I have drbd (newest version; same goes for heartbeat) running as a
master/slave ressource on the latest heart beat ressource and had the
following problem. I had a split brain situation and heartbeat made it
possible to migrate from one node to another and I wonder how that is
possible? How do other people handle this situation. My setup so far is
the following:
<configuration>
<crm_config>
<cluster_property_set id="cib-bootstrap-options">
<attributes>
</attributes>
</cluster_property_set>
</crm_config>
<resources>
<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"/>
</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="postgres"/>
</attributes>
</instance_attributes>
</primitive>
</master_slave>
<group id="postgres-cluster">
<primitive class="ocf" provider="heartbeat" type="Filesystem" id="fs0">
<instance_attributes id="ia-fs0">
<attributes>
<nvpair id="ia-fs0-1" name="fstype" value="ext3"/>
<nvpair name="directory" id="ia-fs0-2" value="/srv/postgres"/>
<nvpair id="ia-fs0-3" name="device" value="/dev/drbd0"/>
</attributes>
</instance_attributes>
<operations>
<op id="fs0-monitor0" name="monitor" interval="60s" timeout="120s" start_delay="1m"/>
</operations>
</primitive>
<primitive class="ocf" provider="heartbeat" type="IPaddr2" id="ip0">
<instance_attributes id="ia-ip0">
<attributes>
<nvpair id="ia-ip0-1" name="ip" value="172.17.0.20"/>
<nvpair id="ia-ip0-2" name="cidr_netmask" value="24"/>
<nvpair id="ia-ip0-3" name="nic" value="eth0.2"/>
</attributes>
</instance_attributes>
<operations>
<op id="ip0-monitor0" name="monitor" interval="60s" timeout="120s" start_delay="1m"/>
</operations>
</primitive>
<primitive class="ocf" provider="heartbeat" type="pgsql" id="pgsql0">
<instance_attributes id="ia-pgsql0">
<attributes>
<nvpair id="ia-pgsql0-1" name="pgctl" value="/usr/lib/postgresql/8.1/bin/pg_ctl"/>
<nvpair id="ia-pgsql0-2" name="start_opt" value="--config_file=/srv/postgres/etc/postgresql.conf"/>
<nvpair id="ia-pgsql0-3" name="pgdata" value="/srv/postgres/data"/>
<nvpair id="ia-pgsql0-4" name="logfile" value="/srv/postgres/postgresql.log"/>
</attributes>
</instance_attributes>
<operations>
<op id="pgsql0-monitor0" name="monitor" interval="60s" timeout="120s" start_delay="1m"/>
<op id="pgsql0-start0" name="start" timeout="60s" prereq="nothing"/>
</operations>
</primitive>
</group>
</resources>
<constraints>
<rsc_location id="drbd0-placement-1" rsc="ms-drbd0">
<rule id="drbd0-rule-1" score="-INFINITY">
<expression id="exp-01" value="postgres-01" attribute="#uname" operation="ne"/>
<expression id="exp-02" value="postgres-02" attribute="#uname" operation="ne"/>
</rule>
</rsc_location>
<rsc_order id="postgres_promotes_ms-drbd0" from="postgres-cluster" action="start" to="ms-drbd0" to_action="promote"/>
<rsc_colocation id="postgres_on_drbd0" to="ms-drbd0" to_role="master" from="postgres-cluster" score="infinity"/>
</constraints>
</configuration>
Thomas
More information about the Linux-HA
mailing list