lunes, 21 de agosto de 2017

Instalar JBoss Application Server en Linux



1.- Descarga de JBoss Application Server (JBoss AS)

wget http://download.jboss.org/jbossas/7.1/jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.zip

2.- Instalación de JAVA JDK

Nota: CentOS por defecto en su instalación base trae Java instalado. se puede verificar con el siguiente comando

# java -version

# rpm -qa | grep jdk

Si no lo tiene instalado se realiza la instalación de la siguiente manera

# yum install java-1.7.0-openjdk

3.- Instalación de JBoss

La intalación a partir del paquete precompilado (binary.zip) es sencilla y se realiza de la siguiente manera

# mv jboss-as-7.1.1.Final.zip /opt
# cd /opt/ && unzip jboss-as-7.1.1.Final.zip
# ln -s /opt/jboss-as-7.1.1.Final /opt/jboss
# ls -l /opt/

4.- Configuración de JBoss

El servidor de aplicaciones no va correr como root, se deben crear usuarios especificos para la ejecución de JBoss

# adduser jboss
# passwd jboss

Configuramos las variables de entorno necesarias para que se pueda ejecutar el servidor de aplicaciones

# su - jboss
$ vi ~/ .bashrc

Las variables necesarias son JAVA_HOME , PATH (Añadir el path de java y de JBoss) y JBOSS_HOME


# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions

export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk
export PATH=$PATH:$JAVA_HOME/bin
        
export JBOSS_HOME=/opt/jboss
export PATH=$PATH:$JBOSS_HOME/bin

Se puede recargar las variables de entorno ejecutando

$ bash



source .bashrc

como root, se debe cambiar el propietario del directorio JBoss al nuevo usuario creado

# chown -R jboss.jboss /opt/jboss-as-7.1.1.Final

5.- Iniciar el JBoss

Hay varias modalidades de arrancar el JBoss, se puede inicar una unica instancia en modo (standalone) o como (managed domain)

El standalone: permite una instancia local unica
El managed domain: permite controlar y configurar multiples instancias de JBoss de varias maquinas.


Para arrancar el modo standalone ejecutamos el siguiente comando.
standalone:
# su - jboss
$ $JBOSS_HOME/bin/standalone.sh

managed domain
# su - jboss
$ $JBOSS_HOME/bin/domain.sh

Si todo ha salido bien, la ejecución mostrará lo siguiente:

=========================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: /opt/jboss

  JAVA: /usr/lib/jvm/jre-1.7.0-openjdk/bin/java

  JAVA_OPTS:  -server -XX:+TieredCompilation -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.server.default.config=standalone.xml

=========================================================================

21:46:04,082 INFO  [org.jboss.modules] JBoss Modules version 1.1.1.GA
21:46:06,487 INFO  [org.jboss.msc] JBoss MSC version 1.0.2.GA
21:46:07,130 INFO  [org.jboss.as] JBAS015899: JBoss AS 7.1.1.Final "Brontes" starting
21:46:18,898 INFO  [org.xnio] XNIO Version 3.0.3.GA
21:46:18,951 INFO  [org.jboss.as.server] JBAS015888: Creating http management service using socket-binding (management-http)
21:46:19,451 INFO  [org.xnio.nio] XNIO NIO Implementation Version 3.0.3.GA
21:46:19,638 INFO  [org.jboss.remoting] JBoss Remoting version 3.2.3.GA
21:46:20,265 INFO  [org.jboss.as.configadmin] JBAS016200: Activating ConfigAdmin Subsystem
21:46:20,310 INFO  [org.jboss.as.logging] JBAS011502: Removing bootstrap log handlers
21:46:20,635 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 44) JBAS013101: Activating Security Subsystem
21:46:20,630 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 38) JBAS011800: Activating Naming Subsystem
21:46:20,632 INFO  [org.jboss.as.osgi] (ServerService Thread Pool -- 39) JBAS011940: Activating OSGi Subsystem
21:46:20,899 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
21:46:22,029 INFO  [org.jboss.as.security] (MSC service thread 1-2) JBAS013100: Current PicketBox version=4.0.7.Final

[...]
21:46:31,249 INFO  [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on /127.0.0.1:4447
21:46:31,836 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-2) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
21:46:32,138 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
21:46:32,145 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.1.Final "Brontes" started in 30736ms - Started 133 of 208 services (74 services are passive or on-demand)


La consola de administración y el servicio sólo estan disponibles en local:

21:46:31,249 INFO  [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on /127.0.0.1:4447
21:46:32,138 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990

Para modificar y que escuche por otras IP de la maquina se debe realizar el cambio en el siguiente archivo:

# nano /opt/jboss-as-7.1.1.Final/standalone/configuration/standalone.xml

<interface name="management">
 <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
 </interface>
 <interface name="public">
 <inet-address value="${jboss.bind.address:127.0.0.1}"/>
 </interface>

Si queremos que escuche por todas las IP:

<interface name="management">
 <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
 </interface>
 <interface name="public">
 <inet-address value="${jboss.bind.address:0.0.0.0}"/>
 </interface>


No hay comentarios:

Publicar un comentario