GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment configurer le cluster Apache Tomcat avec 3 nœuds sur Ubuntu

Dans cet article, nous allons voir comment mettre en place un cluster de serveurs Apache Tomcat. Nous utiliserons 3 instances ou VM Ubuntu 18.04 EC2, ici j'ai utilisé des instances EC2. Nous verrons également les étapes pour installer Java car Apache Tomcat nécessite Java.

Voici les détails de mon cluster.

Détails du cluster :

  1. Noeud1 :Répertoire de base =/root/tomcat1, IP =172.31.35.11
  2. Noeud2 : Répertoire de base =/root/tomcat2, IP = 172.31.39.120
  3. Nœud 3 : Répertoire de base =/root/tomcat3, IP = 172.31.32.185

Prérequis

  1. Compte AWS (créez-le si vous n'en avez pas et souhaitez créer un cluster sur les instances EC2) (facultatif).
  2. 3 instances EC2 (Cliquez ici pour apprendre à créer une instance EC2) OU 3 VM avec Ubuntu 18.04 LTS.
  3. Accès root aux serveurs.

Ce que nous allons faire

  1. Télécharger Apache Tomcat
  2. Installer Java8
  3. Configurer le cluster Apache Tomcat
  4. Démarrer/Arrêter Apache Tomcat

Télécharger Apache Tomcat

Passez à l'utilisateur "root" pour éviter les erreurs d'autorisation. Mais il n'est pas recommandé d'utiliser l'utilisateur "root" sur les environnements de production.

sudo -i

Créer un répertoire. Ici, nous allons stocker le package Apache Tomcat.

mkdir tomcat1 #Sur le nœud2 mkdir tomcat2, Sur le nœud3 mkdir tomcat3  
cd tomcat1/   #Sur le nœud2 cd tomcat2/, Sur le nœud3 cd tomcat3/

Téléchargez et extrayez Apache-Tomcat-9.0.0.M17 ou vous pouvez télécharger une version de votre choix à partir d'ici.

#Sur chaque nœud
wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.0.M17/bin/apache-tomcat-9.0.0.M17.tar.gz #Télécharger
tar -zxvf apache-tomcat-9.0.0.M17.tar.gz #Extraire

Installer Java 8

#Sur chaque nœud
sudo apt-get update            #Mettre à jour les détails du package système
sudo apt install openjdk-8-jdk #Installer Java
java --version                 #Vérifier la version Java

Configurer Apache Tomcat

Avant d'apporter les modifications requises, effectuons une sauvegarde du fichier server.xml par défaut.

#Sur chaque nœud
cd apache-tomcat-9.0.0.M17/             #Changer de répertoire.
cp conf/server.xml conf/server.xml.bak  #Faire une sauvegarde du fichier de configuration existant .

Effectuez les modifications requises dans le fichier server.xml.

#Sur chaque nœud
ifconfig                #Obtenez l'IP du serveur.
vim conf/server.xml     #Ouvrez le fichier de configuration pour effectuer les configurations requises.

Recherchez les lignes suivantes et remplacez localhost par l'adresse IP du nœud

<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost"  appBase="webapps

Pour configurer le cluster, recherchez le code suivant

      <!--
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
      -->

Et ajoutez le code suivant sur chaque nœud et remplacez IP-Of-Node par l'adresse IP du nœud lui-même.

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6">
        <Manager className="org.apache.catalina.ha.session.DeltaManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true"/>
        <Channel className="org.apache.catalina.tribes.group.GroupChannel">
                <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4"
                        port="45564" frequency="500" dropTime="3000"/>
                <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address="IP-Of-Node"
                                port="5000" selectorTimeout="100" maxThreads="6"/>
                <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
                                <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
                </Sender>
                <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
                <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor"/>
                <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
        </Channel>
        <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=""/>
        <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
        <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/"
                deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false"/>
        <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>

Démarrer/Arrêter Apache Tomcat

Démarrer Apache Tomcat

Utilisez startup.sh fichier pour démarrer le service Apache Tomcat. Utiliser netstat commande, vous pouvez voir que le service a démarré sur le port par défaut 8080.

#Sur chaque nœud
bin/startup.sh #Démarrer le service Apache Tomcat.
netstat -tulpn #Vérifier les ports actuellement utilisés sur le système.

Vérifier les journaux

catalina.out contient les journaux d'Apache Tomcat. Vous pouvez utiliser la commande tail pour voir les dernières lignes du fichier.

tail -100f logs/catalina.out

Arrêter Apache Tomcat

Le service Apache Tomcat peut être arrêté à l'aide du fichier shutdown.sh

bin/shutdown.sh #Arrête le service Apache Tomcat.

Conclusion

Dans cet article, nous avons vu les étapes pour créer un cluster d'Apache tomcat avec 3 nœuds, vu la configuration de base qui doit être faite pour créer un cluster.


Ubuntu
  1. Comment installer Apache Tomcat 9 sur Ubuntu 18.04

  2. Comment configurer un cluster MongoDB à l'aide de 3 nœuds avec Ubuntu 16 ?

  3. Comment configurer Apache Subversion avec Lets encrypt SSL sur Ubuntu 18.04

  4. Comment configurer le cluster de bases de données Riak KV sur Ubuntu 18.04

  5. Comment configurer le cluster MariaDB Galera sur Ubuntu 20.04

Comment installer Apache Tomcat 8 sur Ubuntu 16.04

Comment installer Apache Tomcat sur Ubuntu 18.04 LTS

Comment configurer l'authentification par mot de passe avec Apache sur Ubuntu 18.04

Comment installer Apache Tomcat sur Ubuntu 18.04

Comment installer Apache Tomcat 10 sur Ubuntu 20.04 avec Nginx

Comment installer Apache Tomcat 10 sur Ubuntu 22.04 avec Nginx