Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

« Tomcat » : différence entre les versions

De AJLSM
Aller à la navigation Aller à la recherche
→References : Création d'un script init
ajout section: Tâche cron journalière de redémarrage
Ligne 75 : Ligne 75 :
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
/etc/init.d/tomcat6-front.sh restart
/etc/init.d/tomcat6-front.sh restart
</syntaxhighlight>
=== Tâche cron journalière de redémarrage ===
On s'appuie sur la function {{cmd|flushAndRestart}} défini dans {{path|~/.bashrc}} ou {{path|~/.ajlsmrc}}
<syntaxhighlight lang="bash">
@daily  flushAndRestart front
#@daily flushAndRestart back
</syntaxhighlight>
</syntaxhighlight>



Version du 26 juin 2012 à 16:32

Notice :
Si vous ne parvenez pas à trouver Tomcat, consulter la page Localiser Tomcat.

Allocation Mémoire (RAM) avec JAVA_OPTS

On utilise la variable d'environnement JAVA_OPTS<ref>The JAVA_OPTS environment variable @ ibm.com</ref> pour définir l'allocation mémoire du processus Tomcat. On placera généralement cette variable dans Apache Tomcat/bin/startup.sh. Elle peut cependant avoir été défini dans :

On définira la l'option comme suit :

JAVA_OPTS="-Dfile.encoding=UTF-8 -Xmx2500m -XX:MaxPermSize=128m -XX:NewSize=300m -Djava.awt.headless=true -server"

C'est la valeur -Xmx2500m qui défini l'allocation, ici on alloue 2.5Go. On adaptera l'allocation en fonction du serveur et en fonction des besoins de publication.

Arrêt et redémarrage automatique

Nous utiliserons un script init dans le cas d'une installation à partir des sources de Apache Tomcat.<ref>Writing Startup Script for tomcat 6 </ref>

Remarques : Il est inutile de suivre cette procédure lors d'une installation via le gestionnaire de paquet de votre OS.

Création du script

Important :
Si vous avez plusieurs instance tomcat il faudra un script d'initialisation pour chaque instance.
Notice :
Penser à adapter le chemin vers le dossier de votre Tomcat (cf. $CATALINA_HOME) et le chemin vers la JVM ($JAVA_HOME).

Il faut placer le contenu du script ci-dessous dans /etc/init.d/tomcat-front|back.sh

#!/bin/sh
###BEGIN INIT INFO
# Provides:          tomcat
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start Tomcat.
# Description:       Start the Tomcat servlet engine.
### END INIT INFO
# Tomcat 6 init-script

# ATTENTION ! Si vous avez plusieurs instance tomcat il faudra plusieurs script d'initialisation
CATALINA_HOME=/opt/tomcat6-front
JAVA_HOME=/usr/lib/jvm/java-6-sun
#JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.13

export CATALINA_HOME
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
case $1 in
     start)
          sh "$CATALINA_HOME"/bin/startup.sh
          echo "tomcat6 started successfully"
          ;;
     stop)
          sh "$CATALINA_HOME"/bin/shutdown.sh
          echo "tomcat6 stoped successfully"
          ;;
     restart)
          sh "$CATALINA_HOME"/bin/shutdown.sh
          sh "$CATALINA_HOME"/bin/startup.sh
          echo "tomcat6 restarted successfully"
          ;;
       *)
          sh "$CATALINA_HOME"/bin/startup.sh
          echo "tomcat6 started successfully"
   ;;

     esac
exit 0

Ajout du script init au système

Il faut d'abord rendre le script /etct/init.d/tomcat-front|back.sh executable par le système puis on l'ajoute aux scripts démarrer par défaut :

chmod u=rwx,g=rx,o=x tomcat6*
update-rc.d tomcat6-front.sh defaults

On fait un petit test pour vérfier qu'il n'y a pas d'erreur :

/etc/init.d/tomcat6-front.sh restart

Tâche cron journalière de redémarrage

On s'appuie sur la function flushAndRestart défini dans ~/.bashrc ou ~/.ajlsmrc

@daily  flushAndRestart front
#@daily flushAndRestart back

References

  1. FAQ / Memory @ Tomcat wiki

<references/>