Bonjour tout le monde,
Voici mon problème, je suis sur un projet pour installer une solution haute disponibilité via Heartbeat 2.
Je suis sous RedHat Entreprise Linux Server 5 64-bits, j'ai installer les RPM heartbeat-pils-2.1.4-6.el5, heartbeat-ldirectord-2.1.4-6.el5, heartbeat-2.1.4-6.el5 et heartbeat-stonith-2.1.4-6.el5.
Voici le schéma de mon projet:
un serveur maitre : maitre 192.168.0.1
un serveur esclave : esclave 192.168.0.2
Un adresse Ip virtuel ( VIP ) 192.168.209.88
Sur chacun des serveur un serveur Apache est installe.
Le principe est d'envoyer tout le flux sur le serveur Maitre, si on detecte une erreur via heartbeat on bascule automatiquement tout le flux sur le serveur esclave ( puis lorsque maitre est de nouveau opérationnel tout rebasculer sur maitre )
On accede donc au service Apache via la VIP 192.168.209.88, la solution mis en place est donc de basculer la VIP sur maitre ou esclave en fonction de l'etat des machines.
Voici mes fichiers de conf :
- ha.cf :
autojoin none
use_logd on
keepalive 200ms
deadtime 2
warntime 500ms
initdead 10
udpport 694
ping 192.168.209.94 # ping passerelle
bcast bond0 # interface a broadcaster
auto_failback on # On revient sur serveur maitre quand celui-ci est up
node maitre # les nodes
node esclave
crm yes # active heartbeat 2- authkeys
auth 1
1 md5 #AdmiN- haresources
maitre IPaddr::192.168.0.3- Fichier cib.xml (généré à partir de la commande: /usr/lib64/heartbeat/haresources2cib.py --stdout -c ha.cf haresources > /var/lib/heartbeat/crm/cib.xml)
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 <?xml version="1.0" ?> <cib admin_epoch="0" epoch="0" num_updates="0"> <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="0"/> <nvpair id="cib-bootstrap-options-default-resource-failure-stickiness" name="default-resource-failure-stickiness" val ue="0"/> <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-startup-fencing" name="startup-fencing" value="true"/> <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="20s"/> <nvpair id="cib-bootstrap-options-is-managed-default" name="is-managed-default" value="true"/> <nvpair id="cib-bootstrap-options-cluster-delay" name="cluster-delay" value="60s"/> <nvpair id="cib-bootstrap-options-pe-error-series-max" name="pe-error-series-max" value="-1"/> <nvpair id="cib-bootstrap-options-pe-warn-series-max" name="pe-warn-series-max" value="-1"/> <nvpair id="cib-bootstrap-options-pe-input-series-max" name="pe-input-series-max" value="-1"/> </attributes> </cluster_property_set> </crm_config> <nodes/> <resources> <primitive class="ocf" id="IPaddr_192_168_209_88" provider="heartbeat" type="IPaddr"> <operations> <op id="IPaddr_192_168_209_88_mon" interval="5s" name="monitor" timeout="5s"/> </operations> <instance_attributes id="IPaddr_192_168_209_88_inst_attr"> <attributes> <nvpair id="IPaddr_192_168_209_88_attr_0" name="ip" value="192.168.209.88"/> </attributes> </instance_attributes> </primitive> </resources> <constraints> <rsc_location id="rsc_location_IPaddr_192_168_209_88" rsc="IPaddr_192_168_209_88"> <rule id="prefered_location_IPaddr_192_168_209_88" score="100"> <expression attribute="#uname" id="prefered_location_IPaddr_192_168_209_88_expr" operation="eq" value="eul2400082"/> </rule> </rsc_location> </constraints> </configuration> <status/> </cib>
Je lance heartbeat via /etc/init.d/heartbeat start sur les 2 machines ( maitre/esclave ), il se lance bien mais lorsque je fais un crm_mon voila ce que j'obtiens :
Lorsque je fais ifconfig -a sur le maitre aucune adresse ip virtuel de configuré, je bloque les ami(e)s.============
Last updated: Thu Jul 16 11:41:35 2009
Current DC: esclave (8d1479a2-2b7b-4052-b0de-172e06301f2d)
2 Nodes configured.
1 Resources configured.
============
Node: esclave (8d1479a2-2b7b-4052-b0de-172e06301f2d): online
Node: maitre (7e824237-e459-4b74-ae3e-f1b7cf44d94f): online
Failed actions:
IPaddr_192_168_209_88_start_0 (node=eul2400083, call=3, rc=1): complete
IPaddr_192_168_209_88_start_0 (node=eul2400082, call=3, rc=1): complete
Si une âme charitable pouvait mapporter un peu de son temps et son aide cela ne serait pas de refus.
Encore merci à tous par avance de toute l'aide que vous pourriez m'apporter,
PS : bonne journée au soleil ;-)
-------------------------------
hiko-seijuro: c'est moins brutal comme ca
Partager