Projet Socle ENT
Pages enfant
  • Proposition pour l'installation de Tomcat

Vous regardez une version antérieure (v. /wiki/spaces/ESUPMU/pages/289800241/Proposition+pour+l+installation+de+Tomcat) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 2) afficher la version suivante »

Est-ce vraiment intéressant de présenter cela ici ?
De mon côté (VB) je ne trouve pas et n'utilise pas cette façon de faire ... 

Au prix de quelques configurations Tomcat, et suivant les habitudes de chacun, il peut être intéressant de séparer "CATALINA_BASE" (conf) et "CATALINA_HOME" (install Tomcat, binaires,...) pour faciliter les montées de version.

C'est ce qui est expliqué ci-dessous.

Par rapport à une installation classique simple et usuelle où on décompresse l'archive tomcat simplement (sans modification des fichiers de configuration, car tout à fait fonctionnelle telle que donnée par défaut) , cette pratique complexifie toute de même l'installation ; de plus l'arborescence initiale (et classique) du Tomcat est également bouleversé.

 

 

La variable CATALINA_HOME doit être valuée, et le chemin"$CATALINA_HOME/bin" (Linux) ou "%CATALINA_HOME%\bin" (Windows) rajouté au PATH :

Unix (Fichier /etc/profile)
...
export CATALINA_HOME=<cheminVersHomeTomcat>
export PATH=$PATH:$CATALINA_HOME/bin
...
Windows
SET CATALINA_HOME=<cheminVersHomeTomcat>
SET PATH=%PATH%;%CATALINA_HOME%\bin

Cet exemple de scripts permet alors la séparation.

env.sh
...
export CATALINA_HOME=/usr/local/tomcatexport
export CATALINA_BASE=/opt/tomcat
export CATALINA_TMPDIR=$CATALINA_BASE/temp
export CATALINA_OPTS="-Djavax.net.ssl.trustStore=/path/to/esup.keystore"
export CATALINA_PID=/opt/tomcat/uportal.pid
...
installTomcat.sh
./home/ENT/env.sh
 
HOME=$CATALINA_HOME/..
BASE=$CATALINA_BASE/..
cd $HOME
wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.36/bin/apache-tomcat-6.0.36.tar.gz
tar -xzf apache-tomcat-6.0.36.tar.gz
ln -s apache-tomcat-6.0.36 tomcat
 
mkdir $CATALINA_BASE
cp -r $CATALINA_HOME/conf $CATALINA_BASE
mkdir $CATALINA_BASE/logs
mkdir $CATALINA_BASE/temp
mkdir $CATALINA_BASE/work
mkdir -p $CATALINA_BASE/shared/lib
mkdir -p $CATALINA_BASE/shared/classes
mkdir -p $CATALINA_BASE/lib
mkdir $CATALINA_BASE/common
ln -s $CATALINA_HOME/lib/ $CATALINA_BASE/common/lib
 
cp $CATALINA_HOME/conf/server.xml $CATALINA_BASE/conf/
cp $CATALINA_HOME/conf/catalina.properties $CATALINA_BASE/conf/
cp $CATALINA_HOME/conf/logging.properties $CATALINA_BASE/conf/
mkdir $BASE/webapps

Les applications sont à déployer dans $BASE/webapps. Adapter les fichiers $CATALINA_BASE/conf/server.xml, $CATALINA_BASE/conf/catalina.properties et $CATALINA_BASE/conf/logging.properties

Par rapport à l'exemple d'installation dans le fichier $CATALINA_BASE/conf/server.xml bien spécifier le bon path des contextes d'application comme ceci :

$CATALINA_BASE/conf/server.xml
...
<Context path="/portail" docBase="/opt/webapps/uPortal" reloadable="false" ...>
      <Resource name="jdbc/PortalDb" auth="Container" type="javax.sql.DataSource"
                username="USER" password="PASSWORD"
                driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://database.ip:3306/uPortal4"
                maxActive="100" maxIdle="30" maxWait="10000"
                poolPreparedStatements="true"
                removeAbandoned="true"
                removeAbandonedTimeout="300"
                validationQuery="SELECT 1"
                logAbandoned="true"
      />
      ...
</Context>
 ...

 Lors d'une migration de Tomcat, il suffira de:

  • faire un arrêt du Tomcat,
  • faire pointer le lien symbolique /usr/local/tomcat vers la nouvelle version des sources tomcat
  • puis relancer.

!! Attention toutefois lors d'un changement de version majeure !!

  • Aucune étiquette