Einrichten eines Apache-Tomcat-Clusters mit 3 Knoten unter Ubuntu
In diesem Artikel sehen wir, wie man einen Cluster von Apache Tomcat-Servern aufbaut. Wir werden 3 Ubuntu 18.04 EC2-Instanzen oder VMs verwenden, hier habe ich EC2-Instanzen verwendet. Wir werden auch die Schritte zur Installation von Java sehen, da Apache Tomcat Java erfordert.
Im folgenden finden Sie die Details meines Clusters.
Details zum Cluster:
- Knoten1: Basisverzeichnis = /root/tomcat1, IP = 172.31.35.11
- Knoten2: Basisverzeichnis = /root/tomcat2, IP = 172.31.39.120
- Knoten3: Basisverzeichnis = /root/tomcat3, IP = 172.31.32.185
Voraussetzungen
- AWS-Konto (Erstellen Sie ein AWS-Konto, wenn Sie keins haben und einen Cluster auf EC2-Instanzen erstellen möchten) (Optional).
- 3 EC2-Instanzen (Klicken Sie hier, um zu erfahren, wie man eine EC2-Instanz erstellt) ODER 3 VMs mit Ubuntu 18.04 LTS darauf.
- Root-Zugriff auf die Server.
Was wir tun werden
- Apache Tomcat herunterladen
- Java8 installieren
- Konfigurieren des Apache Tomcat-Clusters
- Apache Tomcat starten/stoppen
Apache Tomcat herunterladen
Wechseln Sie zum Benutzer „root“, um Berechtigungsfehler zu vermeiden. Es wird jedoch nicht empfohlen, den Benutzer „root“ in Produktionsumgebungen zu verwenden.
sudo -i
Erstellen Sie ein Verzeichnis. Hier werden wir das Apache Tomcat-Paket speichern.
mkdir tomcat1 #Auf Node2 mkdir tomcat2, Auf Node3 mkdir tomcat3 cd tomcat1/ #Auf Node2 cd
tomcat2/, Auf Node3 cd tomcat3/
Laden Sie Apache-Tomcat-9.0.0.0.M17 herunter und extrahieren Sie es, oder laden Sie eine Version Ihrer Wahl von hier herunter.
#Auf jedem Knoten
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 #Extrahieren
Java 8 installieren
#Auf jedem Knoten
sudo apt-get update #Systempaket-Details aktualisieren sudo apt openjdk-8-jdk
installieren #Java java –version installieren #Java-Version prüfen
Apache Tomcat konfigurieren
Bevor wir die erforderlichen Änderungen vornehmen, machen wir ein Backup der Standard server.xml Datei.
#Auf jedem Knoten
cd apache-tomcat-9.0.0.M17/ #Ändern Sie das Verzeichnis. cp conf/server.xml conf/server.xml.
bak #Erstellen Sie ein Backup der vorhandenen Konfigurationsdatei.
Nehmen Sie die erforderlichen Änderungen in der Datei server.xml vor.
#Auf jedem Knoten
ifconfig #Erhalten Sie die IP des Servers. vim conf/server.xml #Öffnen
Sie die Konfigurationsdatei, um die erforderlichen Konfigurationen vorzunehmen.
Suchen Sie die folgenden Zeilen und ändern Sie localhost in IP des Knotens
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps
Um den Cluster einzurichten, suchen Sie nach folgendem Code
<!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> -->
Und fügen Sie den folgenden Code auf jedem Knoten hinzu und ersetzen Sie IP-Of-Node durch die IP des Knotens selbst.
<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>
Apache Tomcat starten/stoppen
Apache Tomcat starten
Verwenden Sie die Datei startup.sh, um den Apache-Tomcat-Dienst zu starten. Mit dem Befehl netstat können Sie sehen, dass der Dienst auf dem Standardport 8080 gestartet wurde.
#Auf jedem Knoten
bin/startup.sh #Apache-Tomcat-Dienst starten.
netstat -tulpn #Zurzeit auf dem System verwendete Ports prüfen.
Protokolle prüfen
catalina.out enthält die Protokolle von Apache Tomcat. Sie können den Befehl tail verwenden, um die letzten Zeilen aus der Datei zu sehen.
Schwanz -100f logs/catalina.out
Apache Tomcat abschalten
Der Apache-Tomcat-Dienst kann mit der Datei shutdown.sh gestoppt werden
bin/shutdown.sh #Apache-Tomcat-Dienst stoppen.
Schlussfolgerung
In diesem Artikel sahen wir die Schritte zur Erstellung eines Clusters von Apache tomcat mit 3 Knoten, sahen die grundlegende Konfiguration, die zur Erstellung eines Clusters durchgeführt werden muss.