Red Hat Training
A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform
Capítulo 4. Configuración de JBoss EAP para ejecutar como un servicio
4.1. Configuración de JBoss EAP como un servicio en Red Hat Enterprise Linux (instalaciones ZIP y del Instalador).
Prerrequisitos
- Instale JBoss EAP como una instalación ZIP o Instalador.
- Privilegios de administrador en el servidor.
Configuración de JBoss EAP como un servicio en Red Hat Enterprise Linux
Personalice las opciones de arranque en el archivo
jboss-eap.conf
.El script de arranque y un archivo de configuración asociado se localizan en el directorio
EAP_HOME/bin/init.d/
. Abrajboss-eap.conf
en un editor de texto y establezca las opciones para su instalación de JBoss EAP.Hay varias opciones dentro del archivo
jboss-eap.conf
. Como mínimo, especifique los valores correctos para las variablesJBOSS_HOME
yJBOSS_USER
.Puede personalizar las otras opciones provistas en el archivo de configuración descomentando y editando las líneas respectivas. Pero si no, se predeterminará a iniciará un JBoss EAP autónomo mediante el archivo de configuración predeterminado,
standalone.xml
.NotaSi desea que el servicio inicie JBoss EAP en modo de dominio, agregue
JBOSS_MODE=domain
tojboss-eap.conf
.Para especificar archivos de configuración de dominio personalizados, agregue
JBOSS_DOMAIN_CONFIG=DOMAIN_CONFIG_FILE.xml
yJBOSS_DOMAIN_CONFIG=DOMAIN_CONFIG_FILE.xml
. De forma predeterminada, JBoss EAP utilizadomain.xml
yhost.xml
como archivos de configuración de dominio.Copie los archivos de servicio en los directorios del sistema
Copie el archivo de configuración de servicio modificado en el directorio
/etc/default
.sudo cp EAP_HOME/bin/init.d/jboss-eap.conf /etc/default
Copie el script de arranque en el directorio
/etc/init.d
y otórguele permisos de ejecución:sudo cp EAP_HOME/bin/init.d/jboss-eap-rhel.sh /etc/init.d sudo chmod +x /etc/init.d/jboss-eap-rhel.sh
Agregue el nuevo servicio
jboss-eap-rhel.sh
a la lista de servicios iniciados automáticamente, mediante el comando de administración del serviciochkconfig
.sudo chkconfig --add jboss-eap-rhel.sh
Utilice uno de los siguientes comandos para probar si el servicio ha sido instalado correctamente.
Para Red Hat Enterprise Linux 6:
sudo service jboss-eap-rhel.sh start
Para Red Hat Enterprise Linux 7:
sudo service jboss-eap-rhel start
El servicio iniciará. Si obtiene un error, revise los registros de errores y asegúrese de que las opciones en el archivo de configuración estén correctas.
Para que el servicio inicie automáticamente cuando el servidor de Red Hat Enterprise Linux inicie, ejecute el siguiente comando:
sudo chkconfig jboss-eap-rhel.sh on
Si desea retirar el servicio JBoss EAP, use el siguiente procedimiento.
Borre la instalación del servicio JBoss EAP de Red Hat Enterprise Linux
Si el servicio está ejecutándose, abra una terminal y detenga el servicio con uno de los siguientes comandos:
Para Red Hat Enterprise Linux 6:
sudo service jboss-eap-rhel.sh stop
Para Red Hat Enterprise Linux 7:
sudo service jboss-eap-rhel stop
Borre JBoss EAP de la lista de servicios:
sudo chkconfig --del jboss-eap-rhel.sh
Borre el archivo de configuración e inicie el script:
sudo rm /etc/init.d/jboss-eap-rhel.sh sudo rm /etc/default/jboss-eap.conf
4.2. Configuración de JBoss EAP como un servicio en Red Hat Enterprise Linux (instalación RPM)
Prerrequisitos
- Instale JBoss EAP como una instalación RPM.
- Privilegios de administrador en el servidor.
Una instalación RPM deJBoss EAP instala todo lo que se requiere para ejecutar JBoss EAP como un servicio. Use uno de los siguientes comandos para activar el servicio de forma automática en el arranque del sistema.
Para los comandos que aparecen abajo, remplace EAP_SERVICE_NAME
ya sea con eap7-standalone
para un servidor autónomo de JBoss EAP o eap7-domain
par un dominio administrado.
Para Red Hat Enterprise Linux 6:
chkconfig EAP_SERVICE_NAME on
Para Red Hat Enterprise Linux 7:
systemctl enable EAP_SERVICE_NAME.service
Para iniciar o detener una instalación RPM de JBoss EAP a petición, consulte las Instrucciones RPM en la Guía de configuración JBoss EAP.
Consulte el Apéndice de configuración de servicios RPM en la Guía de configuración para obtener más información y opciones.
4.3. Configurar JBoss EAP como un servicio en el servidor de Microsoft Windows
Prerrequisitos
- Instale JBoss EAP como una instalación ZIP o Instalador.
- Privilegios de administrador en el servidor.
-
Defina la variable de entorno del sistema
JAVA_HOME
. - La instancia del servidor JBoss EAP no debe estar ejecutándose.
Al configurar las variables de entorno del sistema utilizando el comandoset
en una línea de comandos del Windows Server no establecerá de forma permanente la variable de entorno. Debe utilizar el comando setx
o la interfaz System en el Panel de control.
Configurar JBoss EAP como un servicio en el servidor de Microsoft Windows
Crear dos variables de entorno del sistema:
-
JBOSS_HOME
apuntando al directorio de instalación JBoss EAP. -
NOPAUSE=1
-
Instale el paquete Jsvc de JBoss Core Services
Si no está aún configurado, descargue y extraiga el paquete Jsvc JBoss Core Services
- Abra un navegador e inicie sesión en el Portal del cliente de Red Hat en la Página de descargas de software JBoss.
- Seleccione Apache Jsvc en el menú desplegable de Producto.
- Seleccione la versión más reciente en el menú desplegable Versión.
- Busque Red Hat JBoss Core Services Apache Jsvc en la lista, asegurándose de seleccionar la plataforma y la arquitectura correctas para su sistema, luego haga clic en el enlace Descargar.
Extraiga el archivo ZIP descargado en el directorio que contiene su directorio de instalación JBoss EAP.
Como resultante tendrá el directorio
jbcs-jsvc-<VERSION>
en la misma profundidad que el directorio de instalación de JBoss EAP. Por ejemplo:C:\Program Files ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Instale el servicio
Abra una terminal y cambie de directorio a
EAP_HOME\bin
.Abajo verá los ejemplos de un comando básico
service.bat install
para crear un nuevo servicio para un servidor autónomo o un servidor en un dominio administrado. Para obtener una lista de todas las opciones posibles, ejecuteservice.bat
sin ningún argumento.Ejecute el siguiente comando, ajustando el nivel de registro para el servicio como se requiera:
Para un servidor autónomo:
service.bat install /loglevel INFO
Para un servidor en un dominio administrado:
Utilice el parámetro
/host
para especificar el nombre del controlador de host de JBoss EAP que está controlado por el servicio. Puede ver los valores válidos para el nombre ejecutandols /host
en la CLI de administración.Reemplace
EAP_HOST_NAME
en el comando siguiente con el nombre del controlador de host de JBoss EAP. Si especifica el parámetro/host
sin proporcionar un nombre de controlador de host de JBoss EAP, el nombre se omite enmaster
.service.bat install /host EAP_HOST_NAME /loglevel INFO
Se creará un nuevo servicio Windows con el nombre
JBossEAP7
.Verifique el nuevo servicio en la consola de
Servicios
Abra la consola de servicios de Windows (
services.msc
) y verifique si el servicio ha sido creado.Si se utilizó el nombre predeterminado del servicio en la lista de servicios Windows, entonces el nuevo servicio tendrá por nombre:
JBossEAP
. Desde la consola de servicios puede iniciar y detener el servicio así como cambiar su configuración y la manera y momento de inicio.Iniciar y detener el servicio JBoss EAP desde una terminal
Para iniciar el servicio desde una terminal, use el siguiente comando, cambiando el nombre del servicio si es necesario:
net start JBossEAP7
Para detener el servicio desde una terminal, use el siguiente comando, cambiando el nombre del servicio si es necesario:
net stop JBossEAP7
Si desea retirar el servicio JBoss EAP, use el siguiente procedimiento.
Suprimir el servicio JBoss EAP en Microsoft Windows Server
Si el servicio está ejecutándose, primero abra una terminal y detenga el servicio con el comando
net stop
con el nombre del servicio:net stop JBossEAP7
En una terminal, cambie los directorios a
EAP_HOME\bin
y ejecute el siguiente comando:service.bat uninstall
4.4. Configurar JBoss EAP como un servicio mediante Jsvc
Los paquetes de los servicios JBoss Core de Apache Jsvc pueden ser utilizados para ejecutar JBoss EAP como un servicio de segundo plano en Red Hat Enterprise Linux y Solaris.
En Red Hat Enterprise Linux, le recomendamos usar métodos nativos para ejecutar JBoss EAP como un servicio.
Jsvc es un grupo de bibliotecas y aplicaciones que le permiten a las aplicaciones Java ejecutar en plataformas similares a UNIX como un servicio de segundo plano. Le permite a las aplicaciones realizar operaciones como un usuario privilegiado y luego cambiar de identidad como un usuario sin privilegios.
Jsvc usa tres procesos: un proceso para lanzar, un proceso de controlador y un proceso controlado. El proceso controlado también es el hilo Java principal. Si la JVM se cae entonces el proceso controlador reiniciará dentro de 60 segundos. Jsvc es un proceso de daemon y para JBoss EAP debe ser iniciado por el usuario privilegiado.
Instale el paquete Jsvc de JBoss Core Services
- Para instalaciones ZIP o de instalador:
- Abra un navegador e inicie sesión en el Portal del cliente de Red Hat en la Página de descargas de software JBoss.
- Seleccione Apache Jsvc en el menú desplegable de Producto.
- Seleccione la versión más reciente en el menú desplegable Versión.
- Busque Red Hat JBoss Core Services Apache Jsvc en la lista, asegurándose de seleccionar la plataforma y la arquitectura correctas para su sistema, luego haga clic en el enlace Descargar.
Extraiga el archivo ZIP descargado en el directorio que contiene su directorio de instalación JBoss EAP.
Como resultante tendrá el directorio
jbcs-jsvc-<VERSION>
en la misma profundidad que el directorio de instalación de JBoss EAP. Por ejemplo:/var/opt/ ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Los ejemplos de comandos para usar Jsvc e iniciar JBoss EAP presumen que el usuario
jboss
ha sido creado. Si aún no ha creado un usuario para JBoss EAP, ejecute los siguientes comandos para crear el usuario y grupojboss
.# groupadd -f -g 185 -r jboss # useradd -r -u 185 -g jboss -d EAP_HOME -s /sbin/nologin -c "JBoss" jboss
- Para instalaciones RPM en Red Hat Enterprise Linux.
- Ingrese a Red Hat Subscription Manager.
- Haga clic en Sistemas en el Inventario de suscriptor.
Suscríbase a los repositorios JBoss Core Services CDN en funcionamiento para la versión y arquitectura de su sistema operativo:
Para Red Hat Enterprise Linux 6:
- jb-coreservices-1-for-rhel-6-server-rpms
Para Red Hat Enterprise Linux 7:
- jb-coreservices-1-for-rhel-7-server-rpms
Ejecute el siguiente comando como usuario root para instalar Jsvc:
# yum groupinstall jbcs-jsvc
Asegúrese de establecer la variable JAVA_HOME
del entorno del sistema.
Utilice Jsvc para iniciar JBoss EAP como un servidor autónomo
Los siguientes comandos se utilizan para iniciar y detener JBoss EAP en modo autónomo mediante Jsvc. Las tablas a continuación muestran las rutas para los comandos de una instalación ZIP/Instalador JBoss EAP o una Instalación RPM.
Tabla 4.1. Ubicación del archivo Jsvc para instalaciones ZIP/Instalador - Servidor autónomo
Referencia de archivos en instrucciones | Ubicación del archivo |
---|---|
|
|
|
|
|
|
|
|
Tabla 4.2. Ubicación del archivo Jsvc para instalaciones RPM - Servidor autónomo
Referencia de archivos en instrucciones | Ubicación del archivo |
---|---|
|
|
|
|
|
|
|
|
Iniciar un servidor JBoss EAP mediante Jsvc:
JSVC_BIN \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -D[Standalone] -XX:+UseCompressedOops -Xms1303m \ -Xmx1303m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/server.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp EAP_HOME/jboss-modules.jar:JSVC_JAR \ -Djboss.home.dir=EAP_HOME \ -Djboss.server.base.dir=EAP_HOME/standalone \ @org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules \ -jaxpmodule javax.xml.jaxp-provider \ org.jboss.as.standalone
Detener los procesos de servidor JBoss EAP:
JSVC_BIN \ -stop \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -D[Standalone] -XX:+UseCompressedOops -Xms1303m \ -Xmx1303m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/server.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp EAP_HOME/jboss-modules.jar:JSVC_JAR \ -Djboss.home.dir=EAP_HOME \ -Djboss.server.base.dir=EAP_HOME/standalone \ @org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules \ -jaxpmodule javax.xml.jaxp-provider \ org.jboss.as.standalone
Utilice Jsvc para iniciar JBoss EAP de dominio administrado
Los siguientes comandos se utilizan para iniciar y detener JBoss EAP en modo autónomo mediante Jsvc. Las tablas a continuación muestran las rutas requeridas para los comandos de una instalación ZIP/Instalador JBoss EAP o una Instalación RPM.
Tabla 4.3. Ubicación del archivo Jsvc para instalaciones ZIP/Instalador - Dominio administrado
Referencia de archivos en instrucciones | Ubicación del archivo |
---|---|
|
|
|
|
|
|
|
|
Tabla 4.4. Ubicación del archivo Jsvc para instalaciones RPM - Dominio administrado
Referencia de archivos en instrucciones | Ubicación del archivo |
---|---|
|
|
|
|
|
|
|
|
Antes de ejecutar el siguiente comando, asegúrese de establecer la variable del entorno del sistema JAVA_HOME
.
Inicie un dominio administrado JBoss EAP mediante Jsvc:
JSVC_BIN \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -nodetach -D"[Process Controller]" -server -Xms64m \ -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/process-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp "EAP_HOME/jboss-modules.jar:JSVC_JAR" \ org.apache.commons.daemon.support.DaemonWrapper \ -start org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules org.jboss.as.process-controller \ -jboss-home EAP_HOME -jvm "${JAVA_HOME}"/bin/java \ -mp EAP_HOME/modules -- \ -Dorg.jboss.boot.log.file=LOG_DIR/host-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -server -Xms64m -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true -- -default-jvm "${JAVA_HOME}"/bin/java \ &
Detenga un dominio administrado JBoss EAP mediante Jsvc:
JSVC_BIN \ -stop \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -nodetach -D"[Process Controller]" -server -Xms64m \ -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/process-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp "EAP_HOME/jboss-modules.jar:JSVC_JAR" \ org.apache.commons.daemon.support.DaemonWrapper \ -start org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules org.jboss.as.process-controller \ -jboss-home EAP_HOME -jvm $JAVA_HOME/bin/java \ -mp EAP_HOME/modules -- \ -Dorg.jboss.boot.log.file=LOG_DIR/host-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -server -Xms64m -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true -- -default-jvm $JAVA_HOME/bin/java