Instalar dos tomcats en la misma máquina como servicios

 Dos tomcats en la misma máquina

Introducción

Instalar dos tomcats en la misma máquina como servicios no es una tarea facil a simple vista, ya que hay que seguir unos pasos en los cuales hay que modificar el registro de windows. Los pasos a seguir son los siguientes:

  • Instalar el primer tomcat como servicio de windows.
  • Modificar unos datos del servicio.
  • Modificar unos datos del monitor del tomcat instalado.
  • Modificar el desinstalador del tomcat instalado.
  • Cambiar los puertos del tomcat.
  • Instalar el segundo tomcat como servicio.

Ahora os explico los pasos más detalladamente.

Instalación

Se realiza la instalación de primer tomcat marcando la opción tomcat/service.

Una vez realizada la instalación se va a modificar el registro del sistema, para esto hay que ejecutar la aplicación regedit. Tendremos que ir al menú inicio, darle a ejecutar y escribiremos regedit y le daremos al enter. Ahora haremos los siguientes cambios:

Modificamos el servicio

  • Vamos a la ruta HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\ y le cambiamos de nombre a Tomcat5 por otro cualquiera, por ejemplo Tomcat5_primario.
  • Vamos a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Tomcat5_primario y cambiamos el valor de la variable DisplayNameModificar de Apache Tomcat al que queramos, por ejemplo por Apache Tomcat Primario.
  • Vamos a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Tomcat5_primario y cambiamos el valor de la variable ImagePath del valor c:\tomcat\bin\tomcat5.exe //RS//Tomcat5 por  c:\tomcat\bin\tomcat5.exe //RS//Tomcat5_primario. (Cuidado! tiene que ser el mismo nombre que le pusimos a la carpeta del primer paso).
  • Ahora iremos a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Tomcat5_2\Enum y cambiaremos el valor de la variable 0 de Root\LEGACY_TOMCAT5\0000 por otro como por ejemplo Root\LEGACY_TOMCAT5_PRIMARIO\0000.
  • Ahora dependiendo si estamos en un Windows de 32 bits o de 64 bits tendremos que hacer cosas diferentes:
    • Para un windows de 32bits haremos lo siguiente:
      • Vamos a HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0 y renombraremos al carpetatomcat5 por otra como por ejemplo tomcat5_primario.
      • Por último iremos a HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\tomcat y renombraremos la carpeta 5.5 por otro nombre, por ejemplo 5.5_primario.
    • Para un Windows de 64bits haremos lo siguiente:
      • Vamos a HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0 y renombraremos al carpeta tomcat5 por otra como por ejemplo tomcat5_primario.
      • Por último iremos a HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\tomcat y renombraremos la carpeta 5.5 por otro nombre, por ejemplo 5.5_primario.

Modificamos el monitor del tomcat

Para windows de 32 bits:

  • Nos movemos a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run y renombramos la variable ApacheTomcatMonitor por otro nombre, por ejemplo ApacheTomcatMonitorPrimario y le cambiamos el valor de "C:\tomcat\bin\tomcat5w.exe" //MS//Tomcat5 por el nuevo "C:\tomcat\bin\tomcat5w.exe" //MS//Tomcat5_primario. (Cuidado! el último nombre tiene que ser igual al nombre que le pusimos en el primer paso de la edición del servicio)

Para windows de 64 bits:

  • Nos movemos a HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run y renombramos la variable ApacheTomcatMonitor por otro nombre, por ejemplo ApacheTomcatMonitorPrimario y le cambiamos el valor de "C:\tomcat\bin\tomcat5w.exe" //MS//Tomcat5 por el nuevo "C:\tomcat\bin\tomcat5w.exe" //MS//Tomcat5_primario. (Cuidado! el último nombre tiene que ser igual al nombre que le pusimos en el primer paso de la edición del servicio)

Modificamos el desinstalador del tomcat

Para Windows de 32 bits:

  • Vamos a  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ y renombramos Apache Tomcat 5.5 por Apache Tomcat 5.5_2.
  • Vamos a  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Apache Tomcat 5.5 y cambiamos el valor de la variable DisplayName de Apache Tomcat 5.5 (remove only) por el de Apache Tomcat 5.5 (remove only) 2 (Asi sabremos cual es cual en la lista de programas para desinstalar).

Para Windows de 64 bits:

  • Vamos a  HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ y renombramos Apache Tomcat 5.5 por Apache Tomcat 5.5_2.
  • Vamos a  HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Apache Tomcat 5.5 y cambiamos el valor de la variable DisplayName de Apache Tomcat 5.5 (remove only) por el de Apache Tomcat 5.5 (remove only) 2 (Asi sabremos cual es cual en la lista de programas para desinstalar).

Cambiamos los puertos para que no colisionen

  • Modificar en el fichero server.xml el valor de los siguientes puertos por otros:
...
<Server port="8005" shutdown="SHUTDOWN">
...
<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true"
...
<Connector port="8009" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
...

Ya tenemos todos cambiado, ahora podremos instalar el segundo tomcat con todo por defecto.

temas: 

Comentarios

Ante todo gracias por la información, es lo único que he visto sobre el tema...

 

Tengo varias dudas.

1º En tu artículo pones como último lugar instalar el segundo Tomcat, sin embargo a la hora de modificar las entradas del registro hablas de Tomcat5_2... De donde sale está entrada?

2º Se podrían instalar cada Tomcat utilizando cada uno una versión de java?

 

Gracias y un saludo!!

Hola José Antonio,

  1. Era una errata. Ese Tomcat5_2 en realidad tendría que ser Tomcat5_primario.
  2. Creo que sin problemas. Cuando instalas el tomcat en windows le dices que java usar. Seleccionando uno diferente en cada instalación se podría hacer.

Tengo que cambiar unas cosas para la instalación en 64 bits, aver si tengo tiempo y lo modifico.

Saludos

Agradecerte por este tipo de aportes, esta muy bueno. mi inquietud es la sigueinte ¿Donde hallo el archivo server.xml?

Encontre el archivo que comentas...te cuento que segui tu post tal como esta pero al tratar de inciar el servicio del tomcat primario me dice que "Falta una entrada requerida en le registro"...me podrias ayduar...segui tal como esta tu post con nombres y todo. Gracias

te felicito, esta re bien este tutorial

gracias

como se haria esto pero para distribuciiones linux, en especifico ubuntu

Añadir nuevo comentario