Archive

Posts Tagged ‘ubuntu’

Plusieurs instances de Tomcat sur Ubuntu

18 janvier 2012 3 commentaires

Pourquoi plusieurs instances ?

  • Pour pouvoir déployer plusieurs applications partageant les même adresses, sur plusieurs virtuals hosts, sans pour autant gérer ces virtuals hosts dans Tomcat
  • Pour pouvoir arrêter / démarrer les JVM de manière indépendante
  • Pouvoir utiliser des environnements Java différents (version de la JVM, librairies partagées, propriétés système, …)
  • Isoler complètement les applications, une fuite mémoire sur l’une ne peut pas impacter l’autre.

Variables d’environnement.

Tomcat utilise deux variables d’environnement :

  • CATALINA_HOME pointe vers le répertoire d’installation de Tomcat
  • CATALINA_BASE est utilisée pour tous les chemins relatifs : configuration, applications.

Si CATALINA_BASE n’est pas précisée, c’est CATALINA_HOME qui est utilisée.

Mise en oeuvre avec Ubuntu

  • Installer tomcat et OpenJDK et le paquet « tomcat6-user » qui permet de créer d’autres instances tomcat :
tom@ubuntu:~$ sudo apt-get install -y tomcat6 openjdk-6-jdk tomcat6-user
  • Pour ne pas créer de confusion, désactiver l’instance principale de tomcat :
tom@ubuntu:~$ sudo update-rc.d -f tomcat6 remove
tom@ubuntu:~$ sudo service tomcat6 stop
  • Créer une nouvelle instance, nommée tomcat6-www, dans notre exemple :
tom@ubuntu:~$ cd /opt
tom@ubuntu:/opt$ sudo tomcat6-instance-create -p 8081 -c 8006 tomcat6-www
tom@ubuntu:/opt$ sudo mkdir tomcat6-www/conf/policy.d
tom@ubuntu:/opt$ sudo touch tomcat6-www/conf/policy.d/empty.policy
tom@ubuntu:/opt$ sudo chown -R tomcat6:tomcat6 tomcat6-www
tom@ubuntu:/opt$ cd /etc/init.d/
tom@ubuntu:/etc/init.d$ sudo cp tomcat6 tomcat6-www

8081 est le port http et 8006 est port d’arrêt.

  • Editer le script de lancement /etc/init.d/tomcat6-www, y changer les variables suivantes :
NAME=tomcat6-www
JVM_TMP=/tmp/tomcat6-www-tmp
DEFAULT=/etc/default/tomcat6
CATALINA_HOME=/usr/share/tomcat6
CATALINA_BASE=/opt/tomcat6-www
  • Activer le démarrage automatique, démarrer l’instance :
tom@ubuntu:/etc/init.d$ sudo update-rc.d tomcat6-www defaults 90
tom@ubuntu:/etc/init.d$ sudo service tomcat6-www start
Mots-clés : ,
Suivre

Recevez les nouvelles publications par mail.