Nube de tags

Con la colaboración de ...

Preferimos Linux

Síguenos en Facebook

Diario informal de K-nábora

jun 01
2010

Instalación de Tomcat en Linux

Enviado por K-nábora Bufete Tecnológico en Sistemaslinux

Pasos Previos

  • Instalación funcional del JDK 
  • Descargar la versión más reciente de Tomcat en formato tar.gz

Instalación

 Coloquese en el directorio donde desee realizar la instalación, se recomienda /usr/local/, realice los siguientes pasos:

  • Descomprimir el archivo con el siguiente comando : tar -xzvf jakarta-tomcat-x.x.x.tar.gz .
  • Una vez terminada la instalación se recomienda cambiar el nombre del directorio jakarta-tomcat-x.x.x a simplemente tomcat ; quedando instalado en una ruta absoluta : /usr/local/tomcat.

Configuración

Tomcat requiere configurarse con diversas variables ambientales para su correcta operación :

  • CATALINA_HOME : Indica el directorio raíz de instalación de Tomcat (Catalina), de acuerdo a las instrucciones anteriores esta ruta sería : /usr/local/tomcat
  • PATH : Define la ruta de acceso para los binarios del sistema; la modificación de esta variable permite accesar los ejecutables de Tomcat (catalina.sh) de cualquier directorio.

Las variables anteriores pueden ser definidas de dos maneras :

  • Nivel Global: Permite que las variables estén accesibles a todo usuario del sistema, en efecto permitiendo que cualquier usuario arranque el Servidor Tomcat; estas definiciones son colocadas en el archivo /etc/profile del sistema.
  • Nivel Usuario: Las variables serían definidas únicamente para el usuario que arrancaría el Servidor Tomcat; estas definiciones son colocadas en el archivo ~/.bashrc, donde ~/ es el directorio base del usuario.

Independientemente de los métodos mencionados anteriormente, las declaraciones en estos archivos son idénticos:

 
CATALINA_HOME="/usr/local/tomcat"
PATH="$PATH:/usr/local/tomcat/bin"
export CATALINA_HOME
export PATH

Pruebas

Para verificar la correcta instalación de Tomcat realice la siguiente prueba:

  • Invoque el comando catalina.sh run que inicia el Servidor (Tomcat); este ejecutable reside en $CATALINA_HOME/bin, donde $CATALINA_HOME es el directorio raíz de instalación; si las variables ambientales fueron definidas correctamente este comando debe estar accesible de cualquier punto del sistema.
  • Abra una ventana de Navegador ("Browser") y visite el URL : http://localhost:8080.

Si al visitar la página anterior observa la documentación de Tomcat(Catalina) lo ha instalado correctamente, en caso contrario realice los pasos anteriores hasta que esta prueba sea ejecutada correctamente.

 

Configuración

server.xml

server.xml es el archivo principal de configuración para Tomcat, al igual que otros archivos de configuración para productos empleados en servidor puede contener una gran variedad de parámetros, sin embargo, esta guia se concentrará en los parámetros principales.

Validación, <!-- --> y valores "Default"

El archivo server.xml es un archivo en XML , el cual de no contener una estructura conforme a XML, se indicará al arranque de Tomcat; dicho archivo se encuentra bajo el directorio /usr/local/tomcat/conf donde /usr/local/tomcat es el directorio definido en CATALINA_HOME.

Como cualquier otro documento en XML todo contenido entre <!-- --> es considerado un comentario, y por lo tanto cualquier parámetro que se encuentre entre estos caracteres no es utilizado por "Tomcat"; aquellos parámetros que no sean definidos dentro de server.xml son asignados un valor "Default" por Tomcat.

<Server> - </Server>

<Server> es el elemento principal del archivo server.xml y todas las demás secciones deben encontrarse entre estos nodos; el atributo port indica el puerto TCP donde se espera la señal de cierre (shutdown) de Tomcat, el cual rara vez es modificado.

<Listener>

A través de los elementos <Listener> se configuran las extensiones JMX ("Java Management Extensions") que serán utilizadas por Tomcat, dichos elementos toman dos atributos : className que indica la Clase diseñada para escuchar sobre eventos JMX y debug para especificar el nivel de "debug" generado al tiempo de ejecución.

<GlobalNamingResources> , <Resource> y <ResourceParams>

Anidado dentro de los elementos <GlobalNamingResources> es posible definir recursos JNDI para ser utilizados globalmente en Tomcat. Lo anterior evita que estos recursos tengan que ser declarados a nivel de WAR de manera individual.

A través de <Resource> es como define el tipo de recurso JNDI que será utilizado y mediante <ResourceParams> se especifican los parámetros específicos que tomará el recurso en dicha instancia de Tomcat.

<Service> - </Service>

Esta parámetro permite configurar Tomcat para diferentes modalidades de ejecución, en el archivo server.xml "Default" se definen dos modalidades a través del atributo name; la definición asignada name="Catalina" es empleada para ejecutar Tomcat individualmente

<Connector>

El elemento Connector representa las conexiones (Puertos TCP) que serán abiertas por Tomcat al arranque, a su vez dentro de cada elemento Connector se definen diversos atributos los cuales dan más detalles acerca de la conexión.

El elemento Connector más importante es aquel que define la clase: HttpConnector.

    <Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" />

La declaración anterior indica que Tomcat esta dispuesto a dar respuesta a requisiciones que arriven en el puerto 8080 del "Host" donde esta instalado Tomcat; si recuerda la ejecución y pruebas de Tomcat a esto se debió el agregar el fragmento :8080.

Para ambientes de producción en los cuales toda requisición será atendida por Tomcat el parámetro port de este elemento debe ser modificado al valor de 80, este puerto es el ampliamente conocido puerto TCP 80 con el que intenta comunicarse cualquier Navegador("Netscape","Explorer","Opera" u otro) en Internet.

Tomcat actúa en efecto como "Servidor de Páginas".

Otras declaraciones para Connectors son aquellas para utilizar encriptación (HTTPS) y los conectores AJP; la configuración de HTTPS es un tanto extensa y no se describirán los detalles, sin embargo, los conectores AJP son aquellos utilizados para la comunicación entre Apache y Tomcat y son los siguientes:

    <Connector port="8009" 
enableLookups="false" redirectPort="8443" debug="0"
protocol="AJP/1.3" />

Esta declaración indica que el puerto 8009 estará recibiendo conexiones bajo ajp13, lo anterior es solo de interés si utiliza Apache en conjunción con Tomcat , lo cual equivale a la linea verde del diagrama anterior.

<Engine> - </Engine>

Los elementos <Engine> los cuales deben encontrarse anidados dentro de <Service> representan el mecanismo que atenderá toda solicitud arrivada Tomcat, esto es, toda solicitud recibida por las definiciones Connectors será procesada por <Engine>, los atributos de este elemento son los siguientes:

 
<Engine name="Catalina" defaultHost="localhost" debug="0">

defaulthost representa el nombre del servidor Tomcat mientras debug indica el nivel de "debug" generado al tiempo de ejecución.

Logger

Los elementos Logger le indican a Tomcat hacia donde deben ser enviados los registros "Logs" :

       <Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="localhost_log." suffix=".txt"
timestamp="true"/>


Lo anterior indica que los registros de Tomcat deben ser enviados al archivo localhost_log.txt; la ubicación de este registro ("log") puede ser modificada al nivel de los elementos Host los cuales permiten definir Virtual Hosts.

<Host> - </Host>

Los elementos Host permiten definir varios Hosts "Virtuales" para Tomcat, esto es, a través del elemento <Engine> se define un sitio(localhost) para atender solicitudes, a través de Host es posible definir diversos sitios "Virtuales", su configuración es la siguiente:

<Host name="desarrollo.servidorprueba.com" debug="0" appBase="webapps" unpackWARs="true">

Lo anterior indica que el sitio desarrollo.servidorprueba.com contiene sus aplicaciones (Archivos WARS ) bajo el directorio $CATALINA_HOME/webapps, donde $CATALINA_HOME es /usr/local/tomcat; el atributo unpackWARs le indica a Tomcat que debe descomprimir los archivos WAR's al arranque.

Como ya fue mencionado, dentro de estos elementos <Host> es posible utilizar <Logger> para generar registros ("logs") por cada sitio virtual.

Context

Context es un elemento utilizado para indicar la ubicación de las aplicaciones ejecutadas en Tomcat , en su configuración "Default" estas aplicaciones se encuentran dentro del directorio webapps bajo el directorio raíz de Tomcat ( /usr/local/tomcat ). El entrar en los detalles de Context seria un tanto prematuro ya que aún no se ha descrito que es un aplicación en Tomcat .

Una aplicación en Tomcat o cualquier Servlet Engine(Web-Container) es un conjunto de "JSP's (Java Server Pages)" y/o "Servlets" agrupados con ciertos parámetros de arranque y seguridad, este conjunto de archivos / aplicación en todo Servlet Engine es conocido como un WAR (Web-Archive).

 





Comentarios (0)add
Escribir comentario

security image
Escribe los caracteres de la imagen


busy