 
 WildFly, anteriormente conocido como JBoss, es un tiempo de ejecución de aplicaciones de código abierto multiplataforma escrito en Java que lo ayuda a crear aplicaciones increíbles. WildFly es flexible, liviano y se basa en subsistemas conectables que se pueden agregar o quitar según sea necesario.
Este tutorial explica cómo instalar el servidor de aplicaciones WildFly en CentOS 7.
Requisitos previos #
Deberá iniciar sesión como usuario con acceso sudo para poder instalar paquetes en su sistema CentOS.
Paso 1:Instalar Java OpenJDK #
WildFly 9 requiere Java SE 8 o posterior. En este tutorial, instalaremos OpenJDK, la implementación de código abierto de la plataforma Java, que es el tiempo de ejecución y desarrollo de Java predeterminado en CentOS 7.
Instale el paquete OpenJDK ejecutando:
sudo yum install java-1.8.0-openjdk-develPaso 2:Cree un número de usuario
Ejecutar WildFly como usuario raíz es un riesgo de seguridad y no se considera una buena práctica.
 Para crear un nuevo usuario y grupo del sistema llamado wildfly con el directorio de inicio /opt/wildfly ejecutar:
sudo groupadd -r wildflysudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly
Paso 3:Instalar WildFly #
 En el momento de escribir este artículo, la última versión de WildFly es 16.0.0 . Antes de continuar con el siguiente paso, debe consultar la página de descarga para obtener una nueva versión. Si hay una nueva versión, reemplace la WILDFLY_VERSION variable en el siguiente comando.
 Descargue el archivo WildFly en /tmp directorio usando el siguiente wget comando:
WILDFLY_VERSION=16.0.0.Finalwget https://download.jboss.org/wildfly/$WILDFLY_VERSION/wildfly-$WILDFLY_VERSION.tar.gz -P /tmp
 Cuando se complete la descarga, descomprima el archivo tar.gz y muévalo a /opt directorio:
sudo tar xf /tmp/wildfly-$WILDFLY_VERSION.tar.gz -C /opt/
 A continuación, cree un enlace simbólico wildfly eso apuntará al directorio de instalación de WildFly:
sudo ln -s /opt/wildfly-$WILDFLY_VERSION /opt/wildfly
 WildFly se ejecutará bajo wildfly usuario que necesita tener acceso al directorio de instalación de WildFly.
 Cambie la propiedad del directorio al usuario y grupo wildfly con el siguiente comando chown:
sudo chown -RH wildfly: /opt/wildflyPaso 4:Configurar Systemd #
El paquete WildFly incluye los archivos necesarios para ejecutar WildFly como servicio.
Comience creando un directorio que contendrá el archivo de configuración de WildFly:
sudo mkdir -p /etc/wildfly
 Copie el archivo de configuración en /etc/wildfly directorio:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/Este archivo le permite especificar el modo WildFly y la dirección de enlace. De forma predeterminada, WildFly se ejecutará en modo independiente y escuchará en todas las interfaces. Puede editar el archivo según sus necesidades.
/etc/wildfly/wildfly.conf# The configuration you want to run
WILDFLY_CONFIG=standalone.xml
# The mode you want to run
WILDFLY_MODE=standalone
# The address to bind to
WILDFLY_BIND=0.0.0.0
 A continuación, copie WildFly launch.sh script al /opt/wildfly/bin/ directorio:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
 Los scripts dentro de bin el directorio debe tener un indicador ejecutable:
sudo sh -c 'chmod +x /opt/wildfly/bin/*.sh'
 Copie el archivo de la unidad systemd llamado a /etc/systemd/system/ directorio:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/Notifique a systemd que creamos un nuevo archivo de unidad:
sudo systemctl daemon-reloadInicie el servicio WildFly y permita que se inicie automáticamente en el momento del arranque ejecutando:
sudo systemctl start wildflysudo systemctl enable wildfly
Verifique que el servicio se esté ejecutando:
sudo systemctl status wildfly● wildfly.service - The WildFly Application Server
   Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: disabled)
   Active: active (running) since Fri 2019-03-01 20:13:39 UTC; 3s ago
 Main PID: 3680 (launch.sh)
   CGroup: /system.slice/wildfly.service
Paso 5:ajuste el número de cortafuegos
Si su servidor está protegido por un firewall y desea acceder a la instancia de WildFly desde el exterior de la red local, también debe abrir el puerto 8080.
Use los siguientes comandos para abrir el puerto necesario:
Al ejecutar una aplicación WildFly en un entorno de producción, lo más probable es que tenga un equilibrador de carga o un proxy inverso, y es una buena práctica restringir el acceso al puerto 8080 solo a su red interna.sudo firewall-cmd --zone=public --permanent --add-port=8080/tcpsudo firewall-cmd --reload
Paso 6:Configure el número de autenticación de WildFly
Ahora que WildFly está instalado y ejecutándose, el siguiente paso es crear un usuario que podrá conectarse mediante la consola de administración o de forma remota mediante la CLI.
 Para agregar un nuevo usuario, use add-user.sh script que se encuentra en el directorio bin de WildFly:
sudo /opt/wildfly/bin/add-user.shSe le preguntará qué tipo de usuario desea agregar:
What type of user do you wish to add? 
 a) Management User (mgmt-users.properties) 
 b) Application User (application-users.properties)
(a):
 Seleccione a y pulsa Enter :
A continuación, el script le pedirá que ingrese los detalles del nuevo usuario:
Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : linuxize
Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
 - The password should be different from the username
 - The password should not be one of the following restricted values {root, admin, administrator}
 - The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
Password : 
Re-enter Password : 
What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]: 
About to add user 'linuxize' for realm 'ManagementRealm'
Is this correct yes/no? yes
Added user 'linuxize' to file '/opt/wildfly-16.0.0.Final/standalone/configuration/mgmt-users.properties'
Added user 'linuxize' to file '/opt/wildfly-16.0.0.Final/domain/configuration/mgmt-users.properties'
Added user 'linuxize' with groups  to file '/opt/wildfly-16.0.0.Final/standalone/configuration/mgmt-groups.properties'
Added user 'linuxize' with groups  to file '/opt/wildfly-16.0.0.Final/domain/configuration/mgmt-groups.properties'
Is this new user going to be used for one AS process to connect to another AS process? 
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? yes
To represent the user add the following to the server-identities definition <secret value="UGFuMjNkZWo3NyNA" />
El nuevo usuario se agregará a los archivos de propiedades utilizados para la autenticación.
Paso 6:Probar la instalación de WildFly #
 Para acceder a la página predeterminada de WildFly, abra su navegador y escriba:http://<your_domain_or_IP_address>:8080 
Suponiendo que la instalación sea exitosa, aparecerá una pantalla similar a la siguiente:
 
 Paso 7:Acceda a la consola de administración de WildFly #
Interfaz de línea de comandos #
 Para acceder a la consola de administración de WildFly desde la línea de comandos, puede usar jboss-cli.sh guión.
 Navegue hasta el directorio bin de WildFly y ejecute el script con --connect opción:
cd /opt/wildfly/bin/./jboss-cli.sh --connect
Se le pedirá que ingrese su nombre de usuario y contraseña administrativos (creados en el paso 6):
Authenticating against security realm: ManagementRealm
Username: linuxize
Password:
 Una vez que inicie sesión, el aviso de la consola cambiará a [standalone@localhost:9990 /] . Escribe help para obtener una lista de comandos y sintaxis de comandos.
Desde aquí, puede implementar y anular la implementación de sus aplicaciones, administrar usuarios y grupos y configurar y monitorear el servidor WildFly.
Interfaz web #
Si prefiere administrar su servidor desde la GUI, WildFly también proporciona una consola basada en web.
 De forma predeterminada, la consola de administración de WildFly solo está disponible desde localhost en http://localhost:9990/console . Inicie sesión con el usuario que ha creado en el paso 6.
 
 
 Si desea acceder a la consola desde ubicaciones remotas, deberá realizar pequeñas modificaciones en wildfly.service , wildfly.conf y launch.sh archivos.
 Abra el wildfly.conf y agregue WILDFLY_CONSOLE_BIND=0.0.0.0 al final del archivo.
# The configuration you want to run
WILDFLY_CONFIG=standalone.xml
# The mode you want to run
WILDFLY_MODE=standalone
# The address to bind to
WILDFLY_BIND=0.0.0.0
# The address console to bind to
WILDFLY_CONSOLE_BIND=0.0.0.0
 Abra el launch.sh y edite las líneas resaltadas:
#!/bin/bash
if [ "x$WILDFLY_HOME" = "x" ]; then
    WILDFLY_HOME="/opt/wildfly"
fi
if [[ "$1" == "domain" ]]; then
    $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4
else
    $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4
fiReinicie el servicio para que los cambios surtan efecto:
sudo systemctl restart wildfly
 Abra el wildfly.service y edite las líneas resaltadas:
[Unit]
Description=The WildFly Application Server
After=syslog.target network.target
Before=httpd.service
[Service]
Environment=LAUNCH_JBOSS_IN_BACKGROUND=1
EnvironmentFile=-/etc/wildfly/wildfly.conf
User=wildfly
LimitNOFILE=102642
PIDFile=/var/run/wildfly/wildfly.pid
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND
StandardOutput=null
[Install]
WantedBy=multi-user.target
 Crea el /var/run/wildfly directorio y establezca los permisos correctos:
sudo mkdir /var/run/wildfly/sudo chown wildfly: /var/run/wildfly/
Notifique a systemd que el archivo de la unidad fue cambiado:
sudo systemctl daemon-reloadReinicie el servicio WildFly ejecutando:
sudo systemctl restart wildfly
 Suponiendo que el puerto 9990 no está bloqueado en su firewall, debería poder acceder a la consola de administración de WildFly en http://<your_domain_or_IP_address>:9990/console .