Projet Socle ENT
Pages enfant
  • Load Balancing (esup 4)

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Bloc de code
languagehtml/xml
titleConfiguration Apache
<VirtualHost *:80>       
    ...
 
    ProxyPass /balancer-manager !
    #Configuration du load balancing
 
    ProxyPass / balancer://mycluster_uPortal/ 

    <Proxy balancer://mycluster_uPortal>
        # BalancerMember ajp://tomcat0.univ.fr:8009 route=ent0 timeout=60 retry=1 lbset=1
        BalancerMember ajp://tomcat1.univ.fr:8009 route=ent1 timeout=60 retry=1 
        BalancerMember ajp://tomcat2.univ.fr:8009 route=ent2 timeout=60 retry=1 
	    ProxySet stickysession=TOMCAT_STICKY nofailover=Off 
    </Proxy>
    Header add Set-Cookie "TOMCAT_STICKY=sticky.%{BALANCER_WORKER_ROUTE}e;path=/;" env=BALANCER_ROUTE_CHANGED
    
     <Location /balancer-manager>
        Order deny,allow
        Deny from all
        Allow from 127.0.0.1 
        SetHandler balancer-manager
    </Location>
    ...
</VirtualHost>

...

Info

Le code :

<Location /balancer-manager>
     Order deny,allow
     Deny from all
     Allow from 127.0.0.1
     SetHandler balancer-manager
</Location>

définit une interface graphique permettant de visualiser la répartition des charges. Elle est accessible via l'url http://localhost/balancer-manager .
Le paramètre "Deny from all / Allow from 127.0.0.1" est une règle de sécurité qui restreint l'accès à cette interface graphique à la machine qui héberge le serveur Apache (127.0.0.1) : cela permet d'éviter un accès non voulu à la page qui pourrait entrainer un changement dans la configuration du load balancing.

Notez que /balancer-manager est donc fourni par Apache directement et non par Tomcat. La ligne "ProxyPass / balancer://mycluster_uPortal/" indique cependant à tomcat de faire du proxypass (transmettre) toutes les requêtes / au( x) Tomcat(s) (cela nous évite de de le faire pour chacun des contextes /uPortal, /esup-lecture, etc.). Aussi pour que /balancer-manager soit bien servi par apache et non transmis au Tomcat, on a dû ajouter avant ce "ProxyPass / balancer://mycluster_uPortal/" un "ProxyPass /balancer-manager !".

 

 

Info
titleRéférences

https://wiki.jasig.org/display/UPM40/Load+Balancing
http://httpd.apache.org/docs/2.2/mod/mod_proxy.html
http://httpd.apache.org/docs/2.2/mod/mod_proxy_ajp.html
http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html
Exemple de fichier de configuration