| L'Actu de l'Université de Lorraine |
| Avis de vacance de la fonction de Doyen |
| Les fonctions de Doyen de l’UFR DEA de l’Univ... |
| La compétition du Shell Eco Marathon s’est achevée ... |
| Dans le cadre de la Biennale du Handicap « 12 Rendez-Vous... |
| Jacques Jouet sort un ouvrage écrit à la bibliothèque universitaire |
| Tickets CRINet | |
| 2013051700 | FERME |
| Hébergment des sites des composantes ex-UPVM | |
| 2013022800 | INFO |
| Rappel : fermeture listes univ-metz.fr | |
| 2013010900 | FERME |
| Problème téléphonique | |
| 2012122100 | INFO |
| perturbation mails upv-m | |
HAProxyCitation de la doc : HAProxy est un relais TCP/HTTP offrant des facilités d'intégration en environnement hautement disponible. En effet, il est capable :
Il requiert peu de ressources, et son architecture événementielle mono-processus lui permet facilement de gérer plusieurs milliers de connexions simultanées sur plusieurs relais sans effondrer le système. Réf : Site : http://haproxy.1wt.eu/ HOWTO : http://www.howtoforge.com/high-availability-load-balancer-haproxy-heartbeat-debian-etch Pré-requis :On va configurer ici 2 serveurs en HA + Failover HAProxy/Apache.On dispose de 2 machines (sous Etch): noeud1 (192.168.0.1) et noeud2 (192.168.0.2) hébergeant chacune un serveur Web Apache. HAProxy sera installé sur les 2 machines mais ne répondera que sur la VIP 192.168.0.3 correspondant à l'IP publique du site à load-balancer. VIP devrait être gérée par Heartbeat afin d'assurer le failover d'HAProxy. 1. Installation HAProxyLes commandes suivantes sont à reproduire à l'identique sur chacun des 2 noeuds. aptitude install haproxy - Configuration, /etc/haproxy/haproxy.cfg (en roundrobin sur les 2 noeuds):
global
log 127.0.0.1 local0 info
maxconn 4096
#debug
#quiet
user haproxy
group haproxy
defaults
log global
mode http
option httplog
option dontlognull
retries 3
redispatch
maxconn 2000
contimeout 5000
clitimeout 50000
srvtimeout 50000
listen webfarm 192.168.0.3:80
mode http
stats enable
stats auth stats:motdepassestat
balance roundrobin
cookie JSESSIONID prefix
option httpclose
option forwardfor
option httpchk HEAD /check.txt HTTP/1.0
server noeud1 192.168.0.1:80 cookie noeud1 check
server noeud2 192.168.0.2:80 cookie noeud2 check
- Pour lancer haproxy meme si la machine n'a pas la VIP : /etc/sysctl.conf : net.ipv4.ip_nonlocal_bind=1 # sysctl -p - Gestion des logs (syslog) : /etc/default/syslogd : SYSLOGD="-r -m 0" /etc/syslog.conf : local0.* /var/log/haproxy.log - Activation au lancement : /etc/default/haproxy : # Set ENABLED to 1 if you want the init script to start haproxy. ENABLED=1 # Add extra flags here. #EXTRAOPTS="-de -m 16" 2. Configuration des serveurs Web- Pour avoir les logs d'accés des clients, remplacer partout le LogFormat :
/etc/apache2/apache2.conf :
#LogFormat "%h %l %u %t \"%r\" ‰>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" ‰>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
- Et les CustomLog pour éviter les logs d'accès de HAProxy : /etc/apache2/sites-available/default : SetEnvIf Request_URI "^/check\.txt$" dontlog CustomLog /var/log/apache2/access.log combined env=!dontlog - Pour le monitoring, mettre dans le DocumentRoot (ici /var/www) : touch /var/www/check.txt Remarque: Veuillez à mettre apache en écoute uniquement sur l'IP de chaque noeud et non sur toutes (comme par défaut) sinon haproxy ne pourra évidemment pas se lancer. 3. Test de fonctionnementPour tester manuellement, on peut ajouter la VIP sur le noeud1 : ip addr add 192.168.0.3 dev eth0 Et lancer haproxy sur les 2 noeuds : /etc/init.d/haproxy start Le site tournant sur la VIP devrait être dispo en répartition entre les 2 noeuds. Si un des 2 noeuds s'arrête le service tourne toujours grâce à celui encore actif. Il ne reste plus qu'à configurer la gestion de la VIP via Heartbeat pour gérer le failover entre les 2 machines, cf Heartbeat ou Heartbeat2 |