GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come configurare il cluster Apache Tomcat con 3 nodi su Ubuntu

In questo articolo vedremo come configurare un cluster di server Apache Tomcat. Useremo 3 istanze o VM di Ubuntu 18.04 EC2, qui ho usato istanze EC2. Vedremo anche i passaggi per installare Java poiché Apache Tomcat richiede Java.

I seguenti sono i dettagli del mio cluster.

Dettagli cluster:

  1. Nodo1:Directory di base =/root/tomcat1, IP =172.31.35.11
  2. Nodo2: directory di base =/root/tomcat2, IP = 172.31.39.120
  3. Nodo3: directory di base =/root/tomcat3, IP = 172.31.32.185

Prerequisiti

  1. Account AWS (crea se non ne hai uno e vuoi creare un cluster su istanze EC2) (facoltativo).
  2. 3 istanze EC2 (fai clic qui per imparare a creare un'istanza EC2) OPPURE 3 VM con Ubuntu 18.04 LTS su di esse.
  3. Accesso root ai server.

Cosa faremo

  1. Scarica Apache Tomcat
  2. Installa Java8
  3. Configura il cluster Apache Tomcat
  4. Avvia/arresta Apache Tomcat

Scarica Apache Tomcat

Passa all'utente "root" per evitare errori di autorizzazione. Ma non è consigliabile utilizzare l'utente "root" negli ambienti di produzione.

sudo -i

Crea una directory. Qui memorizzeremo il pacchetto Apache Tomcat.

mkdir tomcat1 #On Node2 mkdir tomcat2, On Node3 mkdir tomcat3  
cd tomcat1/   #On Node2 cd tomcat2/, On Node3 cd tomcat3/

Scarica ed estrai Apache-Tomcat-9.0.0.M17 oppure puoi scaricare una versione a tua scelta da qui.

#Su ciascun nodo
wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.0.M17/bin/apache-tomcat-9.0.0.M17.tar.gz #Download
tar -zxvf apache-tomcat-9.0.0.M17.tar.gz #Estrai

Installa Java 8

#Su ogni nodo
sudo apt-get update            #Update System Package Details
sudo apt install openjdk-8-jdk #Install Java
java --version                 #Check Java Version

Configura Apache Tomcat

Prima di apportare le modifiche richieste, eseguiamo un backup del file server.xml predefinito.

#Su ciascun nodo
cd apache-tomcat-9.0.0.M17/             #Cambia la directory.
cp conf/server.xml conf/server.xml.bak  #Fai un backup del file di configurazione esistente .

Apporta le modifiche richieste nel file server.xml.

#Su ciascun nodo
ifconfig                #Ottieni l'IP del server.
vim conf/server.xml     #Apri il file di configurazione per effettuare le configurazioni richieste.

Trova le righe seguenti e cambia localhost in IP del nodo

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

Per configurare il cluster, cerca il codice seguente

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

E aggiungi il seguente codice su ciascun nodo e sostituisci IP-Of-Node con l'IP del nodo stesso.

<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>

Avvia/arresta Apache Tomcat

Avvia Apache Tomcat

Utilizza startup.sh per avviare il servizio Apache Tomcat. Utilizzando netstat comando puoi vedere che il servizio è stato avviato sulla porta predefinita 8080.

#Su ciascun nodo
bin/startup.sh #Avvia il servizio Apache Tomcat.
netstat -tulpn #Controlla le porte attualmente utilizzate sul sistema.

Controlla i log

catalina.out contiene i log di Apache Tomcat. Puoi utilizzare il comando tail per vedere le ultime righe del file.

tail -100f logs/catalina.out

Chiudi Apache Tomcat

Il servizio Apache Tomcat può essere interrotto utilizzando il file shutdown.sh

bin/shutdown.sh #Interrompi il servizio Apache Tomcat.

Conclusione

In questo articolo, abbiamo visto i passaggi per creare un cluster di Apache Tomcat con 3 nodi, visto la configurazione di base da eseguire per creare un cluster.


Ubuntu
  1. Come installare Apache Tomcat 9 su Ubuntu 18.04

  2. Come configurare un cluster MongoDB utilizzando 3 nodi con Ubuntu 16?

  3. Come configurare Apache Subversion con Lets crittografa SSL su Ubuntu 18.04

  4. Come configurare il cluster di database Riak KV su Ubuntu 18.04

  5. Come configurare MariaDB Galera Cluster su Ubuntu 20.04

Come installare Apache Tomcat 8 su Ubuntu 16.04

Come installare Apache Tomcat su Ubuntu 18.04 LTS

Come impostare l'autenticazione della password con Apache su Ubuntu 18.04

Come installare Apache Tomcat su Ubuntu 18.04

Come installare Apache Tomcat 10 su Ubuntu 20.04 con Nginx

Come installare Apache Tomcat 10 su Ubuntu 22.04 con Nginx