Automatizar startup de Tomcat 6 en Ubuntu Server

“Este es un post de invitado escrito por Russian.”

El otro día en Mindset (donde yo trabajo) surgió la siguiente pregunta:

  • ¿Como hacer para que los tomcats que utilizamos se inicien automáticamente?

Tan veloz como el viento, dije:

  • Poniendo un startup…

Entonces… por dicho comentario, me designaron la tarea  :vangry:

Automatizar startup de Tomcat 6 en Ubuntu Server

Despues de pensar un poco 😕 decidí utilizar un script para automatizar el inicio. Para eso edite el archivo “tomcat6” mediante el siguiente comando:

sudo gedit /etc/init.d/tomcat6


Hecho esto agregue estas líneas al final de todo:

### BEGIN AUTO-START SCRIPT INFO
# Process Name: Tomcat
# Short-Description: Tomcat Automatic Start
# Description: Auto-Start  the Tomcat servlet engine automatically
# Pidfile: /var/run/tomcat6.pid
### END AUTO-START SCRIPT INFO
export JAVA_HOME=/usr/lib/jvm/java-6-sun
case $1 in
start)
sh /home/deploy/dev-tomcat-instance/bin/startup.sh
sh /home/deploy/test2-tomcat/bin/startup.sh
sh /home/deploy/test3-tomcat/bin/startup.sh
;;
stop)
sh /home/deploy/dev-tomcat-instance/bin/shutdown.sh
sh /home/deploy/test2-tomcat/bin/shutdown.sh
sh /home/deploy/test3-tomcat/bin/shutdown.sh
;;
restart)
sh /home/deploy/dev-tomcat-instance/bin/shutdown.sh
sh /home/deploy/dev-tomcat-instance/bin/startup.sh
sh /home/deploy/test2-tomcat/bin/shutdown.sh
sh /home/deploy/test2-tomcat/bin/startup.sh
sh /home/deploy/test3-tomcat/bin/shutdown.sh
sh /home/deploy/test3-tomcat/bin/startup.sh
;;
esac
exit 0

HELP NOTE: Cabe destacar que el script esta hecho para los directorios de Mindset, por eso tendrán que cambiar el breadcrum de acuerdo a donde ustedes tengan funcionando cada tomcat.

Finalmente guarde el archivo y  generé los links simbólicos necesarios usando los siguientes comandos:

sudo ln -s /etc/init.d/tomcat6 /etc/rc0.d/K99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rc1.d/K99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rc2.d/S99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rc3.d/S99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rc4.d/S99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rc5.d/S99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rc6.d/K99tomcat6
sudo ln -s /etc/init.d/tomcat6 /etc/rcS.d/S99tomcat6

HELP NOTE: Antes de ejecutar estos comandos es necesario que revisen que carpetas “rc” tienen en su sistema, dado que varia según cada configuración y cantidad de tomcats que tengamos.

Por ultimo solo tuve que reiniciar el servidor para verificar que los tomcats se inician automáticamente. 😆

HELP NOTE: Si instalaron recientemente el tomcat en su sistema y nunca habían utilizado los scripts es probable que necesiten darle permisos de ejecución al archivo “tomcat6” del siguiente modo:

sudo chmod 755 /etc/init.d/tomcat6

Enjoy!!!

Deja una respuesta