Heartbeat howto

Heartbeat howto - Logiciels - Linux et OS Alternatifs

Marsh Posté le 26-09-2007 à 16:52:52    

Bonjour,
 
J'ai configuré heartbeat pour 2 machines, avec supervision d'un service pour lequel j'ai ajouté un script supportant start/stop/status: /etc/ha.d/resource.d/tomcat.
Maitre: machine A
Esclave: machine B
 
De prime abord, tourt à l'air de fonctionner :
En arrêtant le réseau sur la machine maître (A):
1/ heartbeat effectue /etc/ha.d/resource.d/tomcat stop sur A
2/ heartbeat effectue /etc/ha.d/resource.d/tomcat stop sur B
3/ heartbeat bascule l'ip virtuelle sur B
 
Quand le réseau est rétabli sur A, heartbeat fait la démarche inverse.
 
Le fichier /etc/ha.d/haresources commun aux 2 machines :
A IPaddr::192.168.199.5 tomcat
 
Le souci, c'est que heartbeat ne tient compte que de l'état de l'interface réseau sur A pour effectuer ses actions.
Or moi, je souhaiterais qu'il tienne également compte de l'état du service "tomcat": si HS, effectuer la bascule.
 
Est-ce une limitation de heartbeat, ou bien est-ce mal configuré ?
 
Merci pour vos suggestions.
 

Reply

Marsh Posté le 26-09-2007 à 16:52:52   

Reply

Marsh Posté le 26-09-2007 à 17:14:23    

pardon je corrige :
2/ heartbeat effectue /etc/ha.d/resource.d/tomcat START sur B

Reply

Marsh Posté le 26-09-2007 à 22:20:06    

heartbeat ne surveille pas le status des services.
Pour obtenir le résultat que tu attends, tu peut combiner hearbeat & mon.
 
http://mon.wiki.kernel.org/
http://www.regit.org/article.php3?id_article=11


---------------
.:: the greater pain that they endure, the more you know the show has scored ... its showtime ::.
Reply

Marsh Posté le 27-09-2007 à 11:12:52    

HeartBeat 2 permet de surveiller le status des services. Il faut que les scripts de service supporte start,stop,status (script LSB)
http://linux-ha.org/LSBResourceAgent
 
Par contre dans le fichier de conf(ha.cf) de heartBeat2 tu dois mettre crm yes, après le fichier haresource n'est plus utilisé et est remplacer par /var/lib/heartbeat/crm/cib.xml qui est en XML
 
Je te laisse regarder ce thread http://forum.hardware.fr/hfr/OSAlt [...] 4484_1.htm


Message édité par steph1066 le 27-09-2007 à 11:13:10
Reply

Marsh Posté le 28-09-2007 à 10:29:14    

Merci beaucoup pour vos réponses.
 
Quand vous dites "heartbeat 2" vous voulez dire "heartbeat version >=2" ou bien une autre version de heartbeat ?
parce que sous Debian, il y a bien 2 packqges distincts :
heartbeat - Subsystem for High-Availability Linux
heartbeat-2 - Subsystem for High-Availability Linux
 
(la je dois l'installer sous redhat )

Reply

Marsh Posté le 28-09-2007 à 13:54:33    

Oui la version 2
Attention la configuration de la version 2 est plus dure (enfin je trouve), tu peux utiliser un GUI "hb_gui" et il n'y a pas beaucoup de tutoriel

Reply

Marsh Posté le 28-09-2007 à 14:31:29    

Ben je ne vois guère de version 2 hormis pour Debian.
J'ai trouvé juste çà pour ma machine (RHEL 3)
 
http://www.ultramonkey.org/downloa [...] 0.2/rhel3/
 
Tu est sûr qu'il ne s'agit pas de la version 2 ?

Reply

Marsh Posté le 28-09-2007 à 15:26:28    

J'ai installé la vers 2.0.1 sur RHEL3, mis "rcrm yes" dans /etc/ha.d/ha.cf et relancé;  
J'ai vu que çà m'avait créé le fichier /var/lib/heartbeat/crm/cib.xml
 
 <cib generated="true" cib_feature_revision="1" admin_epoch="0" epoch="1" num_updates="5" have_quorum="true" last_written="Fri Sep 28 15:53:05 2007" ccm_transition="2" num_peers="1" origin="eul0800233" dc_uuid="569d6863-c0b7-4600-8c46-ca7c1cea4ac2" debug_source="finalize_join">
   <configuration>
     <crm_config/>
     <nodes>
       <node id="569d6863-c0b7-4600-8c46-ca7c1cea4ac2" uname="eul0800233" type="member"/>
     </nodes>
     <resources/>
     <constraints/>
   </configuration>
   <status>
     <node_state id="569d6863-c0b7-4600-8c46-ca7c1cea4ac2" uname="eul0800233" in_ccm="true" join="member" origin="do_lrm_query" crmd="online" ha="active" expected="member">
       <lrm>
         <lrm_resources/>
       </lrm>
     </node_state>
     <node_state id="8fd95f4a-62d2-4f82-8df0-b8e6ba75a5e5" uname="eul0800288" crmd="online" origin="crmd_client_status_callback" in_ccm="true" join="down"/>
   </status>
 </cib>
 
Par contre çe fichier ne mentionne nullement 'tomcat', de sorte que ce dernier ne démarre plus avec heartbeat, qui lui-même ne crée plus aucune VIP !
 
Je ne parviens pas à utiliser haresources2cib.py :
/usr/lib/heartbeat/cts/haresources2cib.py --stdout /etc/ha.d/ha.cf
j'obtiens :
usage: /usr/lib/heartbeat/cts/haresources2cib.py [--nu-ocf] [--nu-monitor] [--help|-h] [resourcefile]  
 
:-((
 

Reply

Marsh Posté le 29-09-2007 à 11:17:42    

soit tu l'édite avec "hb_gui" (qu'il te faut installer)
Soit comme HUB_qc le mentionne dans l'autre thread
"Oui je sais que le fichier haresources n'est plus utilisé; par contre il est très facile de générer le fichier cib.xml a partir du fichier haresources:  
 
/usr/lib/heartbeat/haresources2cib.py --stdout -c ha.cf haresources > /var/lib/heartbeat/crm/cib.xml"

Reply

Marsh Posté le 30-09-2007 à 18:57:51    

J'ai bien essayé de générer le fichier xml avec haresources2cib.py, mais j'ai eu l'erreur que j'ai remonté plus haut.
usage: /usr/lib/heartbeat/cts/haresources2cib.py [--nu-ocf] [--nu-monitor] [--help|-h] [resourcefile]  
 
Du coup je vais essayer d'utiliser hb_gui, mais je trouve très peu de doc là-dessus.
Ca peut s'installer sur une machine distante ?

Reply

Marsh Posté le 30-09-2007 à 18:57:51   

Reply

Marsh Posté le 01-10-2007 à 10:00:43    

yes, par contre même numero de version entre HeartBeat et hb_gui.


Message édité par steph1066 le 01-10-2007 à 10:02:27
Reply

Marsh Posté le 23-10-2007 à 19:44:07    

Au lieu de:
 
/usr/lib/heartbeat/cts/haresources2cib.py --stdout /etc/ha.d/ha.cf
 
 
Tu devrais essayer:
 
cd /etc/ha.d
/usr/lib/heartbeat/haresources2cib.py --stdout -c ha.cf haresources > /var/lib/heartbeat/crm/cib.xml
 
Prend garde de sauvegarder ton cib.xml avant

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed