Apache2.0.55+JBOSS+mod_jk en ubuntu
mmmmmh!! estuve pensando mucho rato sobre si escribir este post o no, ya que me costo mucho poder configurar solo esta burrá y pensaba kedarme ese conocimiento y no compartirlo, pero despues pense mejor y me acorde ke igual lei por ahy cosas en foros y weas ke otros aportaron asi ke bueno aca decidi compartirlo no mas…
Bueno, para las personas que trabajan con JBOSS o con Apache como servidor web, les va a servir, ya que podemos tener ambos corriendo y solo entramos a ellos por diferentes puertos,…… (voy a almorzar)…
La configuración de los puertos en el router no la detallare porke pienso que es mas facil de hacer.
Revisión rapida de lo que debemos hacer:
- Descargar Apache2 (http://httpd.apache.org/download.cgi)
- Descargar modjk 1.2.x (http://tomcat.apache.org/download-connectors.cgi)
- Cambiar la configuración del Apache para incluir la configuración del mod_jk.
- Crear la configuración del mod_jk
- Configurar los workers del mod_jk (los que indicaran los nodos que usa el apache)
- Configurar las ULIs del Apache por medio del mod_jk
- Reiniciar el Apache
- Configurar Tomcat
- Reiniciar JBoss
- Probar.
PASO #1: Descargar el Apache
Una vez descargado e instalado el apache, no se necesita ninguna configuracion especial. Llamaremos APACHE_HOME a la carpeta o directorio donde se encuentra instalado (siendo esta la ruta completa, en mi caso /home/xito/apache2).
PASO #2: Descargar mod_jk 1.2.x (mod_jk-1.2.25-httpd-2.2.4.so) o de la pagina http://apache.freeby.pctools.cl/tomcat/tomcat-connectors/jk/binaries/linux/jk-1.2.25/i386/
Una vez descargado el archivo mod_jk debemos renombrarlo por mod_jk.so y colocarlo en la carpeta APACHE_HOME/modules.
NOTE: No uses una version menor a 1.2.15 porke tienen problemas.
PASO #3: Configurar Apache para que use modjk
al final del archivo APACHE_HOME/conf/httpd.conf agregar las siguientes lineas:
# Include mod_jk configuration file Include conf/mod-jk.conf
Step #4: Creamos el archivo modjk con la configuración.
Para esto en la carpeta APACHE_HOME/conf, creamos el archivo mod-jk.conf y colocamos lo siguiente:
# Load mod_jk module # Specify the filename of the mod_jk lib LoadModule jk_module modules/mod_jk.so # Where to find workers.properties JkWorkersFile conf/workers.properties # Where to put jk logs JkLogFile logs/mod_jk.log # Set the jk log level [debug/error/info] JkLogLevel info # Select the log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" # JkOptions indicates to send SSK KEY SIZE # Note: Changed from +ForwardURICompat. # See http://tomcat.apache.org/security-jk.html JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories # JkRequestLogFormat JkRequestLogFormat "%w %V %T" # Mount your applications JkMount /__application__/* loadbalancer # You can use external file for mount points. # It will be checked for updates each 60 seconds. # The format of the file is: /url=worker # /examples/*=loadbalancer JkMountFile conf/uriworkermap.properties # Add shared memory. # This directive is present with 1.2.10 and # later versions of mod_jk, and is needed for # for load balancing to work properly # Note: Replaced JkShmFile logs/jk.shm due to SELinux issues. Refer to # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=225452 JkShmFile run/jk.shm # Add jkstatus for managing runtime data <Location /jkstatus/> JkMount status Order deny,allow Deny from all Allow from 127.0.0.1 </Location>
Ahora el mod_jk esta listo para aceptar peticiones del JBOSS, ahora necesitamos configurar los workers.
PASO #5: Configurar workers
En la carpeta APACHE_HOME/conf, crear el archivo workers.properties y escribir lo siguiente:
# Define list of workers that will be used # for mapping requests # The configuration directives are valid # for the mod_jk version 1.2.18 and later # worker.list=loadbalancer,status # Define Node1 # modify the host as your host IP or DNS name. worker.node1.port=8009 worker.node1.host=localhost worker.node1.type=ajp13 worker.node1.lbfactor=1 # worker.node1.connection_pool_size=10 (1) # Define Node2 # modify the host as your host IP or DNS name. worker.node2.port=8009 worker.node2.host= localhost worker.node2.type=ajp13 worker.node2.lbfactor=1 # worker.node1.connection_pool_size=10 (1) # Load-balancing behaviour worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=node1,node2 # Status worker for managing load balancer worker.status.type=status
Deben modificar localhost por si IP o DNS eso depende de su configuracion del servidor, pero si el servidor esta en su mismo ekipo dejenlo asi mismo.
PASO #6: Crear los URI
crear un archivo que se llame uriworkermap.properties en la carpeta APACHE_HOME/conf
# Simple worker configuration file # # Mount the Servlet context to the ajp13 worker /jmx-console=loadbalancer /jmx-console/*=loadbalancer /web-console=loadbalancer /web-console/*=loadbalancer
Esto configurara el mod_jk para responder peticiones para /jmx-console y /web-console a tomcat.
PASO #7: Reiniciar el Apache. Si es ke ya tenemos el servicio corriendo debemos detenerlo de la siguiente forma $ sudo APACHE_HOME/bin/apachectl stop de lo contrario lo hacemos correr
$ sudo APACHE/bin/apachectl start;
Step #8: Configure Tomcat en JBOSS
Para completar la configuracion, necesitamos nombrar cada nodo de acuerdo a la configuracion especificada en los workers. Para esto editamos el archivo JBOSS_HOME/server/all/deploy/jbossweb-tomcat50.sar/server.xml (reemplazar /all de acuerdo a la configuracion que estamos ocupando)
Buscar la etiqueta <Engine….> y agregar el atributo jvmRoute:
<Engine name=”jboss.web” defaultHost=”localhost” jvmRoute=”node1″> . </Engine>
este nombre debe coincidir con el declarado en el worker que creamos.
Ademas asegurarse ke el esta lindea este sin comentario:
<!– A AJP 1.3 Connector on port 8009 –>
<Connector port=”8009″ address=”${jboss.bind.address}” emptySessionPath=”true” enableLookups=”false” redirectPort=”8443″ protocol=”AJP/1.3″/>
PASO #10: Activate the UseJK en el JBoss
Para esto editamos el archivo JBOSS_HOME/server/all/deploy/jbossweb-tomcat50.sar/META-INF/jboss-service.xml
(reemplazar /all de acuerdo a la configuracion que estamos ocupando)
Encontrar la etiqueta <attribute> con el nombre UseJK, y modificamos su valor a “true”:
<attribute name="UseJK">true</attribute>
La version del Tomcar puede ser 50 o 55 depende de la version del JBOSS ke estemos ocupando.
PASO #11: Reiniciamos JBoss AS
o lo hacemos correr de la siguiente forma
$ cd $JBOSS_HOME/bin
$ sh ./run.sh
Si todo quedo bien configurado deberiamos poder entrar por aca http://localhost/web-console o http://localhost:8080/web-console/
Ojala sirva este pekeño aporte
eso chauuu






buta kmo es eso de configurar los puertos del router :S:S
¬¬ teni ke explicar todo pos !!!! no podi poner un manual a medias xD
ma encima tuve ke hacerme una cuenta pa poder comentar ¬¬
ia lee esto rapido y explica xD
aa y kmo echas a correr el jboss en window :S:S
darkwizard2008 dijo esto en Diciembre 26, 2007 en 5:07 pm
emm ya conecte eche a correr el jboss =D
me falta lo de la cuenta dns :S
me cree una pero no c ke mas hacer para ke se conecte cn el localhost
jelmiiii!!!!
darkwizard2008 dijo esto en Diciembre 26, 2007 en 6:03 pm
¬¬
darkwizard2008 dijo esto en Diciembre 27, 2007 en 8:32 pm
[...] Ahora se debe instalar el famoso JBOSS para eso debes ir al titulo ke tengo aca en el blog de APACHE+mod_jk+JBOSS en este link… PINCHA ACAAAA… [...]
prepractica - DIA 2 inst. JEE&JAVA&Netbeans 6 B1 « mio mi blog dijo esto en Enero 10, 2008 en 1:42 pm