Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

17.6.3. Installer le module mod cluster dans un serveur Apache HTTP ou dans JBoss Enterprise Web Server (Zip)

Conditions préalables

  • Pour cette tâche, vous devrez utiliser un serveur Apache HTTP installé dans Red Hat Enterprise Linux 6, ou JBoss Enterprise Web Server, ou encore un serveur Apache HTTP autonome comme composant de JBoss EAP 6 à télécharger séparément.
  • Si vous avez besoin d'installer un serveur Apache HTTP dans Red Hat Enterprise Linux 6, utiliser les instructions dans Red Hat Enterprise Linux 6 Deployment Guide.
  • Si vous avez besoin d'installer un serveur Apache HTTP autonome en tant que composant téléchargeable de JBoss EAP 6, consulter Section 17.4.2, « Installer le serveur Apache HTTP inclus dans JBoss EAP 6 ».
  • Si vous avez besoin d'installer JBoss Enterprise Web Server, utiliser les instructions dans JBoss Enterprise Web Server Installation Guide.
  • Télécharger le package Webserver Connecter Natives correspondant à votre système d'exploitation et architecture depuis le portail client de Red Hat à https://access.redhat.com. Ce paquet contient les modules HTTPD mod_cluster binaires précompilés pour votre système d'exploitation. Après avoir extrait l'archive, les modules se trouvent dans le répertoire EAP_HOME/modules/system/layers/base/native/lib/httpd/modules.
    Le répertoire etc/ contient quelques exemples de fichiers de configuration et le répertoire share/ contient une documentation supplémentaire.
  • Vous devez être connectés avec des privilèges administratifs (root).

Note

Si vous utilisez un système 64 bit, les modules binaires de serveur web de mod_cluster se trouveront ici : EAP_HOME/modules/system/layers/base/native/lib64/httpd/modules. Vous devrez utiliser ce chemin si vous devez accéder aux modules.

Procédure 17.8. Installer le Module mod cluster

  1. Déterminer l'emplacement de votre configuration de serveur Apache HTTP.

    Votre emplacement de seveur Apache HTTP sera différent selon que vous utilisez Apache HTTP de Red Hat Enterprise Linux, le serveur Apache HTTP autonome inclus comme composant séparé téléchargeable dans JBoss EAP 6 ou le serveur Apache HTTP disponible dans JBoss Enterprise Web Server. C'est l'une des trois options suivantes qui sera mentionnée au cours de cette tâche sous le nom HTTPD_HOME.
    • Apache HTTP Server - /etc/httpd/
    • JBoss EAP 6 HTTP Server - cet emplacement est choisi par vous-même sur la base des exigences de votre infrastructure.
    • JBoss Enterprise Web Server Apache HTTP Server - EWS_HOME/httpd/
  2. Copier les modules dans le répertoire de modules d'Apache HTTP Server.

    Copier les quatre modules (les fichiers qui se terminent par .so) à partir du répertoire EAP_HOME/modules/system/layers/base/native/lib/httpd/modules de l'archive extraite Webserver Natives vers le répertoire HTTPD_MODULES.
  3. Pour JBoss Enterprise Web Server, désactiver le module mod_proxy_balancer.

    Si vous utilisez JBoss Enterprise Web Server, le module mod_proxy_balancer sera activé par défaut. Il est incompatible avec mod cluster. Pour le désactiver, modifier HTTPD_CONF/httpd.conf et décommenter la ligne suivante en mettant le symbole # (hachage) devant la ligne qui charge le module. La ligne apparaîtra sans le commentaire, puis avec, comme ci-dessous.
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    # LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    Sauvegarder et fermer le fichier.
  4. Configurer le module mod_cluster.

    L'archive Webserver Natives contient un échantillon de fichier mod_cluster.conf (EAP_HOME/modules/system/layers/base/native/etc/httpd/conf). Ce fichier peut être utilisé comme guide ou copié et modifié pour créer un fichier HTTPD_CONF.DJBoss_HTTP.conf.

    Note

    L'utilisation du nom JBoss_HTTP.conf est une convention arbitraire de ce document. le fichier de configuration sera chargé, indépendemment de son nom, s'il est enregistré dans le répertoire conf.d/ avec l'extension .conf.
    Ajouter l'entrée suivante à votre fichier de configuration :
    LoadModule slotmem_module modules/mod_slotmem.so
    LoadModule manager_module modules/mod_manager.so
    LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
    LoadModule advertise_module modules/mod_advertise.so
    
    Cela oblige le serveur Apache HTTP à charger les modules dont mod_cluster a besoin automatiquement pour fonctionner.
  5. Créer un proxy de listener de serveur.

    Continuer à éditer HTTPD_CONF.D/httpd/JBoss_HTTP.conf et ajouter la configuration minimale suivante, en remplaçant les valeurs en lettres majuscules par des valeurs adaptées à votre environnement.
    Listen IP_ADDRESS:PORT
    <VirtualHost IP_ADDRESS:PORT>  
    	  <Location />
              Order deny,allow
              Deny from all
              Allow from *.MYDOMAIN.COM
    	  </Location>
    	  
    	  KeepAliveTimeout 60
    	  MaxKeepAliveRequests 0
    	  EnableMCPMReceive
    	  
    	  ManagerBalancerName mycluster
    	  ServerAdvertise On
    	  
    </VirtualHost>
    Ces directives créent un nouveau serveur virtuel qui écoute sur le port IP_ADDRESS:PORT, permet des connexions de MYDOMAIN.COM et se présente comme un équilibreur de charge du nom mycluster. Ces directives sont traitées en détail dans la documentation pour le serveur Web Apache Server. Pour en savoir plus sur les directives ServerAdvertise et EnableMCPMReceive ou les implications des annonces de serveur, consulter Section 17.6.5, « Configurer les propriétés de Server Advertisement de votre serveur web activé par votre mod_cluster ».
    Enregistrer le fichier et sortir.
  6. Démarrer à nouveau le serveur HTTP Apache.

    La façon de redémarrer le serveur Apache HTTP dépend de savoir si vous utilisez le serveur Apache HTTP de Red Hat Enterprise Linux ou le serveur HTTP inclus dans JBoss Enterprise Web Server. Choisir une des deux méthodes ci-dessous.
    • Serveur Apache HTTP de Red Hat Enterprise Linux 6

      Exécuter la commande suivante :
      [root@host]# service httpd restart
    • JBoss Enterprise Web Server HTTP Server

      JBoss Enterprise Web Server exécute à la fois sur Red Hat Enterprise Linux et Microsoft Windows Server. La méthode de redémarrage du serveur Apache HTTP est différente pour chacun.
      • Red Hat Enterprise Linux

        Dans Red Hat Enterprise Linux, JBoss Enterprise Web Server installe son serveur Apache HTTP en tant que service. Pour redémarrer le serveur Apache HTTP, lancer les deux commandes suivantes :
        [root@host ~]# service httpd stop
        [root@host ~]# service httpd start
      • Microsoft Windows Server

        Lancer les commandes suivantes dans une invite de commande avec des privilèges administratifs :
        C:\> net stop httpd
        C:\> net start httpd
Résultat

Le serveur Apache HTTP est maintenant configuré comme équilibreur de charges, et peut fonctionner avec le sous-système mod_cluster qui exécute sur JBoss EAP 6. Pour configurer JBoss EAP 6 pour qu'il soit au fait de mod_cluster, consulter Section 17.6.6, « Configurer un nœud de worker de mod_cluster ».