Manos a la obra. Lo primero es instalar Jboss, para ello vamos a la página de JBoss y nos descargamos la versión deseada
http://labs.jboss.com/portal/jbossas/download
Ahora descomprimimos y por ejemplo lo llevamos a la carpeta opt:
#mv jboss-4.2.3.GA /opt/
Probamos que funciona:
#/opt/jboss-4.2.3.GA/bin/run.sh
Hasta aqui todo correcto, o eso espero, para saberlo sólo tienes que esperar que la consola te indique que ha arrancado.
Posteriormente tecleamos http://localhost:8080/jmx-console y debería aparacernos la consola de JBoss.
Apache
Instalamos el Apache:
# apt-get install apache2
# apt-get install libapache2-mod-jk
Es importante instalar el mod-jk, porque es el que nos permitirá integrar el JBoss con el Servidor WEB Apache.
Probamos que todo ha ido correcto
http://localhost
Esto nos debe devolver la página por defecto del Apache.
Configuración Básica del conector mod_jk
Importante recalcar que es la config básica. El mod_jk tiene varios archivos básicos, que son los que necesitamos "retocar".
httpd.conf o apache2.conf
Aquí le tenemos que decir que cargue el módulo y debemos indicarle su archivo de configuración, debemos añadir o descomentar las siguientes líneas:
# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
## Cargamos mod_jk
Include /etc/apache2/mods-enabled/mod_jk.conf
# Include all the user configurations:
Include /etc/apache2/httpd.conf
Vamos al directorio de los modulos /etc/apache2/mods-enabled y editamos los qye tienen que ver con el mod_jk:
- jk.load
- mod_jk.conf
Sino existen los creamos, copio los míos, que son los básicos y no tienen porqué ser iguales en otras config.:
jk.load
-----------
LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so
mod_jk.conf
--------------------
# Sample mod_jk configuration
# for Apache 2
#
# for all commands/options available see the manual
# provided in libapache-mod-jk-doc package.
# The location where mod_jk will find the workers definitions
JkWorkersFile /etc/libapache2-mod-jk/workers.properties
# The location where mod_jk is going to place its log file
JkLogFile /var/log/apache2/mod_jk.log
# The log level:
# - info log will contain standard mod_jk activity (default).
# - warn log will contain non fatal error reports.
# - error log will contain also error reports.
# - debug log will contain all information on mod_jk activity
# - trace log will contain all tracing information on mod_jk activity
JkLogLevel info
#Formato del Log
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
# Assign specific URLs to Tomcat. In general the structure of a
# JkMount directive is: JkMount [URL prefix] [Worker name]
# send all requests ending in .jsp to ajp13_worker
JkMount /jmx-console ajp13_worker
JkMount /jmx-console/* ajp13_worker
JkMount /web-console ajp13_worker
JkMount /web-console/* ajp13_worker
JkMount /*.jsp ajp13_worker
# send all requests ending /servlet to ajp13_worker
JkMount /*/servlet/ ajp13_worker
# JkUnmount directive acts as an opposite to JkMount and blocks access
# to a particular URL. The purpose is to be able to filter out the
# particular content types from mounted context.
# do not send requests ending with .gif to ajp13_worker
#JkUnMount /servlet/*.gif ajp13_worker
# JkMount / JkUnMount directives can also be used inside
# sections of your httpd.conf file.
La parte señalada como JkMount, es donde le indicamos las aplicaciones que queremos montar, esta parte tiene muchas más configuraciones, se le puede pasar un fichero de URIs, por ejemplo, también es importante la parte de JkUnMount, para decirle lo que no queremos enviarle al conector.
Otra cosa importante es indicarle el conector ajp13_worker, yo le he llamado así, pero se le puede llamar como más te guste, pero acuerdate bien de cual es.
La última parte importante es la que tiene que ver con el fichero de propiedades, en nuestro caso está en:
JkWorkersFile /etc/libapache2-mod-jk/workers.properties
Sin tener un inglés muy perfeccionado podemos enteder de sobra lo que queremos configurar. A tener en cuenta:
# workers.properties -
#
# Directorio para conectarlo con el Tomcat
workers.tomcat_home=/usr/share/tomcat5
#
# workers.java_home should point to your Java installation. Normally
# you should have a bin and lib directories beneath it.
#
workers.java_home=/usr/lib/jvm/java-gcj
#
# You should configure your environment slash... ps=\ on NT and / on UNIX
# and maybe something different elsewhere.
#
ps=/
#
#------ ADVANCED MODE ------------------------------------------------
#---------------------------------------------------------------------
#
#
#------ worker list ------------------------------------------
#---------------------------------------------------------------------
#
#
# The workers that your plugins should create and work with
# Este nombre es el que luego debe coincidir con el mod_jk.conf
worker.list=ajp13_worker
#
#------ ajp13_worker WORKER DEFINITION ------------------------------
#
# Defining a worker named ajp13_worker and of type ajp13
# Note that the name and the type do not have to match.
# Debemos asegurarnos que el JBoss escucha por ese puerto, las peticiones
# que le va a hacer el Apache, en caso de estar en la misma máquina, sino
# debemos cambiar el localhost por la ip de la máquina.
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
# Podemos configurar una balanceador con varios Nodos
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
# ----> lbfactor must be > 0
# ----> Low lbfactor means less work done by the worker.
worker.ajp13_worker.lbfactor=1
# Especificamos la caché si queremos
# Specify the size of the open connection cache.
#worker.ajp13_worker.cachesize
#
#------ DEFAULT LOAD BALANCER WORKER DEFINITION ----------------------
#---------------------------------------------------------------------
#
#
# The loadbalancer (type lb) workers perform wighted round-robin
# load balancing with sticky sessions.
# Note:
# ----> If a worker dies, the load balancer will check its state
# once in a while. Until then all work is redirected to peer
# workers.
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=ajp13_worker
Sólo nos queda recargar la configuración del Apache:
# /etc/init.d/apache2 force-reload
Y probamos:
http://localhost/jmx-console
Y debería volver a aparecer la consola del JBoss pero en esta caso servida por el Apache, y procesada por el JBoss.
Hasta aquí este pequeño HOW-TO.
JF
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.