GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Tomcat 8 su Ubuntu 16.04 (istanze multiple)

Apache Tomcat comunemente chiamato Tomcat è un server Web open source e un contenitore Servlet sviluppato da Apache Software Foundation. È scritto in Java e rilasciato con licenza Apache 2.0. Questa è un'applicazione multipiattaforma. Tomcat è in realtà composto da una serie di componenti, tra cui un motore JSP Tomcat e una varietà di connettori diversi, ma il suo componente principale è chiamato Catalina. Catalina fornisce l'effettiva implementazione da parte di Tomcat delle specifiche del servlet.

In questo articolo, ti fornirò le linee guida per installare, configurare e creare più istanze di Tomcat 8 su Ubuntu 16.04. Esaminiamo i passaggi dell'installazione.

Poiché Tomcat è scritto in Java, è necessario che Java sia installato sul nostro server prima dell'installazione.

Installa Java

Tomcat 8 richiede l'installazione di Java 7 o versioni successive sul server. Ho aggiornato i pacchetti sul mio server Ubuntu e ho installato i pacchetti JDK utilizzando i comandi seguenti:

root@ubuntu:~# apt-get update
root@ubuntu:~# apt-get install default-jdk
Setting up default-jdk-headless (2:1.8-56ubuntu2) ...
Setting up openjdk-8-jdk:amd64 (8u91-b14-0ubuntu4~16.04.1) ...
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/appletviewer to provide /usr/bin/appletviewer (appletviewer) in auto mode
update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jconsole to provide /usr/bin/jconsole (jconsole) in auto mode
Setting up default-jdk (2:1.8-56ubuntu2) ...
Setting up gconf-service-backend (3.2.6-3ubuntu6) ...
Setting up gconf2 (3.2.6-3ubuntu6) ...
Setting up libgnomevfs2-common (1:2.24.4-6.1ubuntu1) ...
Setting up libgnomevfs2-0:amd64 (1:2.24.4-6.1ubuntu1) ...
Setting up libgnome2-common (2.32.1-5ubuntu1) ...
Setting up libgnome-2-0:amd64 (2.32.1-5ubuntu1) ...
Processing triggers for libc-bin (2.23-0ubuntu3) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for systemd (229-4ubuntu4) ...
Processing triggers for ca-certificates (20160104ubuntu1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...

done.
done.

Verifica e conferma la versione Java

Dopo il processo di installazione, verifica la versione Java installata sul tuo server.

root@ubuntu:~# java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-0ubuntu4~16.04.1-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)

Scarica/Installa Tomcat

Possiamo scaricare l'ultima versione di Tomcat qui. Scaricalo ed estrailo nella cartella /opt/apache-tomcat8.

root@ubuntu:/opt# wget http://a.mbbsindia.com/tomcat/tomcat-8/v8.0.35/bin/apache-tomcat-8.0.35.zip
--2016-05-23 03:02:48-- http://a.mbbsindia.com/tomcat/tomcat-8/v8.0.35/bin/apache-tomcat-8.0.35.zip
Resolving a.mbbsindia.com (a.mbbsindia.com)... 103.27.233.42
Connecting to a.mbbsindia.com (a.mbbsindia.com)|103.27.233.42|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9842037 (9.4M) [application/zip]
Saving to: ‘apache-tomcat-8.0.35.zip’

apache-tomcat-8.0.35.zip 100%[===================================================================>] 9.39M 4.46MB/s in 2.1s

2016-05-23 03:02:51 (4.46 MB/s) - ‘apache-tomcat-8.0.35.zip’ saved [9842037/9842037]

Creazione utente/gruppo Tomcat

Si consiglia sempre di eseguire un'applicazione come utente anziché come utente root. Quindi, ho creato un utente chiamato Tomcat per eseguire questa applicazione.

root@ubuntu:/opt# groupadd tomcat

root@ubuntu:/opt# useradd -g tomcat -s /bin/bash -d /opt/apache-tomcat8 tomcat

Ora rendi eseguibili per l'utente tutti gli script nella cartella bin Tomcat.

root@ubuntu:/opt/apache-tomcat8/bin# chmod 700 *.sh

root@ubuntu:/opt# chown -R tomcat.tomcat apache-tomcat8/

Avvia l'applicazione Tomcat

Ora passa all'utente Tomcat ed esegui lo script startup.sh all'interno della cartella binaria Tomcat ovvero /opt/apache-tomcat8/bin/ per eseguire questa applicazione.

tomcat@ubuntu:~/bin$ sh startup.sh
Using CATALINA_BASE: /opt/apache-tomcat8
Using CATALINA_HOME: /opt/apache-tomcat8
Using CATALINA_TMPDIR: /opt/apache-tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/apache-tomcat8/bin/bootstrap.jar:/opt/apache-tomcat8/bin/tomcat-juli.jar
Tomcat started.

Ora possiamo accedere a questo URL http://serverip:8080 sul browser per confermare il funzionamento di Tomcat.

Possiamo anche confermare lo stato usando questo comando dalla CLI come di seguito:

root@ubuntu:/opt# lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 22722 tomcat 53u IPv6 100669 0t0 TCP *:http-alt (LISTEN)

PS:per spegnere l'applicazione puoi usare lo script shutdown.sh all'interno dei binari Tomcat.

root@ubuntu:/opt/apache-tomcat8# sh bin/shutdown.sh
Using CATALINA_BASE: /opt/apache-tomcat8
Using CATALINA_HOME: /opt/apache-tomcat8
Using CATALINA_TMPDIR: /opt/apache-tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/apache-tomcat8/bin/bootstrap.jar:/opt/apache-tomcat8/bin/tomcat-juli.jar
May 24, 2016 3:32:35 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Could not contact localhost:8005. Tomcat may not be running.
May 24, 2016 3:32:36 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Catalina.stop:

Gestione applicazioni Web Tomcat

In un ambiente di produzione, è molto utile avere la possibilità di distribuire una nuova applicazione Web o annullare la distribuzione di una esistente, senza dover spegnere/riavviare l'intero server. Inoltre, puoi persino ricaricare un'applicazione esistente, anche senza dichiararla ricaricabile nel file di configurazione del server Tomcat.

Questa console Web di gestione supporta le seguenti funzioni:

  • Distribuire una nuova applicazione Web dal file WAR caricato o su un percorso di contesto specificato dal server f/s.
  • Elenca le applicazioni Web attualmente distribuite e le sessioni attualmente attive
  • Ricarica un'applicazione web esistente, per riflettere le modifiche ai contenuti delle /WEB-INF/classes o /WEB-INF/lib.
  • Ottieni le informazioni sul server sul sistema operativo e sulla JVM
  • Avvia e arresta un'applicazione Web esistente, --arrestando l'applicazione esistente rendendola non disponibile. Ma non annullarne la distribuzione.
  • Annulla la distribuzione di un'applicazione Web distribuita ed elimina la directory di base dei documenti

Possiamo creare gli utenti per gestire la console Web di Tomcat Management. Puoi modificare il file di configurazione dell'utente Tomcat e precisamente conf/tomcat-users.xml per creare gli utenti amministratori per gestire il Pannello.

Ho aggiunto queste righe al file di configurazione utente Tomcat per creare due utenti, vale a dire manager e admin, con le password elencate.

<user username="manager" password="tomcat123" roles="manager-gui" />

<user username="admin" password="tomcat123" roles="manager-gui,admin-gui"/>

Possiamo accedere a Tomcat Web Application Manager utilizzando l'URL>>http://SERVERIP:8080/manager/ con gli utenti creati.

Abilitazione del supporto SSL/TLS su Tomcat

Tomcat utilizza un file protetto da password "keystore" per salvare le transazioni SSL. Dobbiamo creare un file keystore per memorizzare la chiave privata del server e il certificato autofirmato eseguendo il seguente comando:

root@ubuntu:/usr/local# keytool -genkey -alias tomcat -keyalg RSA -keystore /usr/local/keystore
Enter keystore password:
Re-enter new password:
What is your first and last name?
[Unknown]: Saheetha Shameer
What is the name of your organizational unit?
[Unknown]: VIP
What is the name of your organization?
[Unknown]: VIP
What is the name of your City or Locality?
[Unknown]: Kochi
What is the name of your State or Province?
[Unknown]: Kerala
What is the two-letter country code for this unit?
[Unknown]: IN
Is CN=Saheetha Shameer, OU=VIP, O=VIP, L=Kochi, ST=Kerala, C=IN correct?
[no]: yes

Enter key password for <tomcat>
(RETURN if same as keystore password):

Options:

-genkeypair : Generate key pair

-keyalg : Key algorithm

-keystore : Keystore file path

Dopo aver inserito i dettagli per la generazione della certificazione, puoi modificare la configurazione del server Tomcat per abilitare il supporto SSL/TLS indirizzando al file keystore.

Dobbiamo aggiungere questa sezione al file di configurazione del server Tomcat, ovvero conf/server.xml

<Connector port="8443" protocol="HTTP/1.1"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/usr/local/keystore"
 keystorePass="tomcat123"/>

Riavvia l'applicazione Tomcat dopo aver confermato il contenuto del keystore.

tomcat@ubuntu:~$ keytool -list -keystore /usr/local/keystore
Enter keystore password:

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 1 entry

tomcat, May 23, 2016, PrivateKeyEntry,
Certificate fingerprint (SHA1): A3:99:A8:DD:F1:11:4F:69:37:95:11:66:41:59:A5:05:68:23:3E:B2

Ora puoi accedere all'applicazione Tomcat sulla porta 8443 all'URL https://SERVER IP:8443 per confermarne il funzionamento.

Creazione di più istanze Tomcat

Per creare più istanze Tomcat, puoi scaricare ed estrarre l'applicazione Tomcat in una cartella diversa. Ho estratto il contenuto in una cartella diversa, ovvero /opt/apache-tomcat8-2. Dopo aver estratto i file, è necessario apportare le modifiche appropriate al file di configurazione di Tomcat Server per modificare le porte del connettore e altre porte importanti per l'applicazione per evitare conflitti con l'applicazione esistente.

Queste sono le seguenti modifiche applicate al file di configurazione di Tomcat Server, ovvero conf/server.xml.

1. Modificata la porta di spegnimento da 8005 a 8006

 <Server port="8005" shutdown="SHUTDOWN">

to

<Server port="8006" shutdown="SHUTDOWN">

2. Modificata la porta del connettore da 8080 a 8081

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"
redirectPort="8443" />
<!-- A "Connector" using the shared thread pool-->
<!--

to

<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!-- A "Connector" using the shared thread pool-->
<!--

3. Modificata la porta AJP da 8009 a 8010

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

Dopo aver applicato queste modifiche, riavvia la nostra nuova applicazione Tomcat in /opt/apache-tomcat8-2

root@ubuntu:/opt# chown -R tomcat.tomcat /opt/apache-tomcat8-2

root@ubuntu:/opt#cd apache-tomcat8-2

Rendere lo script eseguibile per l'utente.

root@ubuntu:/opt/apache-tomcat8-2# chmod 700 bin/*.sh

Passa all'utente Tomcat e avvia l'applicazione.

tomcat@ubuntu:/opt/apache-tomcat8-2/bin$ sh startup.sh
Using CATALINA_BASE: /opt/apache-tomcat8-2
Using CATALINA_HOME: /opt/apache-tomcat8-2
Using CATALINA_TMPDIR: /opt/apache-tomcat8-2/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/apache-tomcat8-2/bin/bootstrap.jar:/opt/apache-tomcat8-2/bin/tomcat-juli.jar
Tomcat started.

Verifica la seconda istanza Tomcat alla porta 8081 all'URL http://SERVERIP:8081

Questo è tutto! hai finito con le cose di base sulle installazioni di Tomcat. Spero ti sia piaciuto leggere questo articolo. Vorrei raccomandare i vostri preziosi suggerimenti e commenti su questo. Grazie per aver letto questo :)

Buona giornata!


Ubuntu
  1. Come installare Tomcat su Ubuntu 18.04

  2. Come installare Tomcat 8 su Ubuntu 14.04

  3. Come installare Tomcat su Ubuntu 18.04

  4. Come installare Tomcat su Ubuntu 20.04

  5. Come installare JasperReports su Ubuntu 20.04

Come installare Apache Tomcat 10 su Ubuntu 20.04

Come installare Apache Tomcat 10 su Ubuntu 21

Come installare Apache Tomcat su Ubuntu 20.04?

Come installare Apache Tomcat 8 su Ubuntu 14.04

Come installare Apache Tomcat su Ubuntu 18.04

Come installare Tomcat su Ubuntu 20.04