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