PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Heartbeat lebt aber er switcht nicht



Huhn Hur Tu
23.03.10, 12:46
Hallo, so nachdem ich Pacemaker/Heartbeat dazu gebracht habe alle Dienste zu starten, möchte ich nun dass PM/HB wenn eine Seite ausfällt die Resourcen auf den anderen Knoten switcht.

Mein Config bisher


crm(live)# configure
crm(live)configure# show
node $id="3e20966a-ed64-4972-8f5a-88be0977f759" server1 \
attributes standby="off"
node $id="5262f929-1082-4a85-aa05-7bd1992f15be" server2 \
attributes standby="off"
primitive pri_apache2 ocf:heartbeat:apache \
op monitor interval="15s" \
params configfile="/etc/apache2/apache2.conf" httpd="/usr/sbin/apache2" port="80" \
meta target-role="started"
primitive pri_drbd_service ocf:linbit:drbd \
params drbd_resource="t3" \
op monitor interval="15s" \
meta target-role="started" is-managed="true"
primitive pri_fs_drbd_t3 ocf:heartbeat:Filesystem \
params device="/dev/drbd0" directory="/mnt/drbd_daten" fstype="ext3" \
meta target-role="started"
primitive pri_gemeinsame_IP ocf:heartbeat:IPaddr2 \
params ip="192.168.1.253" cidr_netmask="24" nic="eth1" \
meta is-managed="true"
primitive pri_mysql lsb:mysql
group t3 pri_gemeinsame_IP pri_fs_drbd_t3 pri_apache2
ms ms_drbd_service pri_drbd_service \
meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"
location cli-prefer-pri_gemeinsame_IP t3 \
rule $id="cli-prefer-rule-pri_gemeinsame_IP" inf: #uname eq server1
colocation apache_on_drbd inf: t3 ms_drbd_service:Master
order apache_after_drbd inf: ms_drbd_service:promote t3:start
property $id="cib-bootstrap-options" \
dc-version="1.0.7-54d7869bfe3691eb723b1d47810e5585d8246b58" \
cluster-infrastructure="Heartbeat" \
startup-fencing="false" \
stonith-enabled="false" \
no-quorum-policy="ignore" \
expected-quorum-votes="0" \
last-lrm-refresh="1269335261"


Gruss Stefan

Huhn Hur Tu
23.03.10, 12:59
Ok ich sehe es funktioniert, nur wenn ich einen von beiden Servern, beide laufen als aktive, auf standby stelle, aber dann faehrt er drbd runter, aber der soll doch laufen auf dem zweiten Server, oder?
Wenn ich Heartbeat mit killall -9 beende bekomme ich fehler, ich nehme an weil das DRBD device noch gemountet ist.
Nachdem ich heartbeat auf dem server1 Node gestoppt habe mit /etc/init.d/heartbeat stop, übernimmt Node Server2. Wenn ich server1 wieder starte wird wieder auf Server1 geswitcht, ist das normal oder wie kann ich einstellen dass, nachdem Server1 wieder oben ist nicht automatisch geswitcht werden soll.

Gruss Stefan

Radab
23.03.10, 21:23
Das geht mit monitor, ich meine das du die website überprüfen kannst ob die noch funktioniert(vernünftiges ergebniss ausliefert). Ich schau morgen mal, wenn ich zu hause bin.

Huhn Hur Tu
24.03.10, 10:17
Bei Location habe ich gesehen dass die Gruppe t3 auf Server1 bevorzugt wird. Wie kann ich dies umstellen dass es nachdem Server1 Standby war die resourcen nicht wieder zu Server1 geswitcht werden sondern erst mal bei Server2 verbleiben bis dieser mal standby oder offline ist.



Erst mal die aktuelle Config


crm(live)# configure
crm(live)configure# show
node $id="3e20966a-ed64-4972-8f5a-88be0977f759" server1 \
attributes standby="off"
node $id="5262f929-1082-4a85-aa05-7bd1992f15be" server2 \
attributes standby="off"
primitive pri_apache2 ocf:heartbeat:apache \
op monitor interval="15s" \
params configfile="/etc/apache2/apache2.conf" httpd="/usr/sbin/apache2" port="80" \
meta target-role="started"
primitive pri_drbd_service ocf:linbit:drbd \
params drbd_resource="t3" \
op monitor interval="15s" \
meta target-role="started" is-managed="true"
primitive pri_fs_drbd_t3 ocf:heartbeat:Filesystem \
params device="/dev/drbd0" directory="/mnt/drbd_daten" fstype="ext3" \
meta target-role="started"
primitive pri_gemeinsame_IP ocf:heartbeat:IPaddr2 \
params ip="192.168.1.253" cidr_netmask="24" nic="eth1" \
meta is-managed="true"
primitive pri_mysql lsb:mysql \
op monitor interval="15s" \
meta target-role="started" is-managed="true"
group t3 pri_gemeinsame_IP pri_fs_drbd_t3 pri_apache2
ms ms_drbd_service pri_drbd_service \
meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true"
location cli-prefer-pri_gemeinsame_IP t3 \
rule $id="cli-prefer-rule-pri_gemeinsame_IP" inf: #uname eq server1
colocation apache_on_drbd inf: t3 ms_drbd_service:Master
order apache_after_drbd inf: ms_drbd_service:promote t3:start
property $id="cib-bootstrap-options" \
dc-version="1.0.7-54d7869bfe3691eb723b1d47810e5585d8246b58" \
cluster-infrastructure="Heartbeat" \
startup-fencing="false" \
stonith-enabled="false" \
no-quorum-policy="ignore" \
expected-quorum-votes="0" \
last-lrm-refresh="1269335261"

Huhn Hur Tu
24.03.10, 10:59
Und gleich nochmal.
Nachdem ich gerade ein manuelles Stonith gemacht habe musste ich feststellen dass der andere Node die Dienste nicht übernimmt, weder wenn er auch online war noch als standby. Die Dienste werden nur migriert wenn beide Online sind und der gerade aktive Server auf Standby geschalten wird. Ich beötige aber einen echten Failover.

Gruss Stefan

Huhn Hur Tu
24.03.10, 15:54
Ein Problem gelöst: Nach dem Switch bleiben die ressourcen auf dem Server2
Die option Resource stickiness=infinity war die Loesung.
Scheinbar ist auch das Problem mit dem Failover gelöst, bei einem Stonith (Strom weg) werden die Ressourcen geswitcht. Aber den getöteten Node bekomme ich nicht mehr online, also nicht über die GUI.

gruss Stefan

Huhn Hur Tu
30.06.10, 15:11
http://pf-lug.de/v8/showtopic.php?id=24&page=1#p95

So ist es bisher beendet worden

Gruss Stefan