Pada artikel ini, kita akan melihat cara menyiapkan cluster server Apache Tomcat. Kami akan menggunakan 3 Instance atau VM Ubuntu 18.04 EC2, di sini saya telah menggunakan instance EC2. Kita juga akan melihat langkah-langkah untuk menginstal Java karena Apache Tomcat membutuhkan Java.
Berikut adalah detail cluster saya.
Detail Cluster:
- Node1:Direktori Dasar =/root/Tomcat1, IP =172.31.35.11
- Node2: Direktori Dasar =/root/Tomcat2, IP = 172.31.39.120
- Node3: Direktori Dasar =/root/Tomcat3, IP = 172.31.32.185
Prasyarat
- Akun AWS (Buat jika Anda tidak memilikinya dan ingin membuat cluster di Instans EC2) (Opsional).
- 3 Instans EC2 (Klik di sini untuk mempelajari cara membuat Instans EC2) ATAU 3 VM dengan Ubuntu 18.04 LTS di dalamnya.
- Akses root ke server.
Apa yang akan kami lakukan
- Unduh Apache Tomcat
- Instal Java8
- Konfigurasi Cluster Apache Tomcat
- Mulai/Hentikan Apache Tomcat
Unduh Apache Tomcat
Ubah ke pengguna "root" untuk menghindari kesalahan izin. Tetapi tidak disarankan untuk menggunakan pengguna "root" di Lingkungan Produksi.
sudo -i
Buat direktori. Disini kita akan menyimpan Paket Apache Tomcat.
mkdir tomcat1 #On Node2 mkdir tomcat2, On Node3 mkdir tomcat3
cd tomcat1/ #On Node2 cd tomcat2/, On Node3 cd tomcat3/
Unduh dan Ekstrak Apache-Tomcat-9.0.0.M17 atau Anda dapat mengunduh versi pilihan Anda dari sini.
#Pada setiap Node
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 #Extract
Instal Java 8
#Pada setiap node
sudo apt-get update #Update System Package Details
sudo apt install openjdk-8-jdk #Install Java
java --version #Periksa Versi Java
Konfigurasi Apache Tomcat
Sebelum membuat perubahan yang diperlukan, buat cadangan file server.xml default.
#Pada setiap node
cd apache-Tomcat-9.0.0.M17/ #Ubah direktori.
cp conf/server.xml conf/server.xml.bak #Ambil cadangan dari file konfigurasi yang ada .
Buat perubahan yang diperlukan dalam file server.xml.
#Pada setiap node
ifconfig #Dapatkan IP server.
vim conf/server.xml #Buka file konfigurasi untuk membuat konfigurasi yang diperlukan.
Temukan baris berikut dan ubah localhost ke IP Node
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps
Untuk mengatur cluster, cari kode berikut
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
Dan tambahkan kode berikut pada setiap node dan ganti IP-Of-Node dengan IP node itu sendiri.
<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>
Mulai/Hentikan Apache Tomcat
Mulai Apache Tomcat
Gunakan startup.sh file untuk memulai layanan Apache Tomcat. Menggunakan netstat perintah Anda dapat melihat bahwa layanan telah dimulai pada port default 8080.
#Pada setiap node
bin/startup.sh #Mulai Layanan Apache Tomcat.
netstat -tulpn #Periksa port yang sedang digunakan pada sistem.
Periksa Log
catalina.out berisi log Apache Tomcat. Anda dapat menggunakan perintah tail untuk melihat baris terakhir dari file.
tail -100f logs/catalina.out
Matikan Apache Tomcat
Layanan Apache Tomcat dapat dihentikan menggunakan file shutdown.sh
bin/shutdown.sh #Stop Layanan Apache Tomcat.
Kesimpulan
Pada artikel ini, kita melihat langkah-langkah membuat cluster Apache Tomcat dengan 3 node, melihat konfigurasi dasar yang perlu dilakukan untuk membuat cluster.