Despliegue de aplicaciones en JBoss EAP 6.2 con CLI

Oct 5, 2014 | TIC-tek

El desarrollo de aplicaciones web implica la creación de componentes JavaEE:

  1. Clientes de aplicación y applets (en el cliente).
  2. Java Servlet, JavaServer Faces (JSF), and JavaServer Pages (JSP).
  3. Enterprise JavaBeans (EJB) (o enterprise beans).

Los componentes, una vez desarrollados, se despliegan y ejecutan en contenedores especializados. Cuando se crea una aplicación JavaEE, ésta tiene que empaquetarse y desplegarse antes de tenerla disponible para su uso. El proceso de ensamblado de los componentes requiere especificar el soporte del servidor JavaEE:

  1. Seguridad: usuarios autorizados.
  2. Modelo de gestión de transacciones: relaciones entre métodos que constituyen una transacción (tratados como una unidad).
  3. Java Naming and Directory Interface (JNDI): acceso a servicios de nombres y directorio.
  4. Conectividad remota: permite que los clientes invoquen métodos en los EJBs como si estuvieran en la misma máquina virtual.

Composición de módulos en aplicaciones:

El proceso de despliegue de aplicaciones en JBoss EAP 6 se realiza de diferentes formas:

  1. Consola de gestión: esta consola web permite al usuario el despliegue gracias a una interface de usuario.
  2. CLI: herramienta en línea de comandos.
  3. Scanner.
  4. Maven.

En este post vamos a analizar cómo realizar esta operación con CLI, la herramienta en línea de comandos.

 

¿Qué es CLI?

CLI es un ejemplo de herramienta que usa la API nativa. Se encuentra disponible para instancias en modo standalone y domain, permitiendo a los usuarios conectar a las instancias y realizar operaciones de gestión.

Para ejecutar la herrmienta debemos trabajar con el ejecutable jboss-cli en su diferentes variantes:

$ EAP_HOME/bin/jboss-cli.sh

C:\>EAP_HOME\bin\jboss-cli.bat

Por ejemplo:

kentia:jboss-eap-6.2 ematiz$ ./bin/jboss-cli.sh
You are disconnected at the moment. Type 'connect' to connect to the server or 'help' for the list of supported commands.
[disconnected /]

Despliegue de aplicaciones con CLI

El comando deploy es el responsable de desencadenar el proceso de despligue:

SYNOPSIS

    deploy (file_path [--script=script_name] [--name=deployment_name]
           [--runtime-name=deployment_runtime_name]
           [--force | --disabled] [--unmanaged])
           | --name=deployment_name
           [--server-groups=group_name (,group_name)* | --all-server-groups]
           [--headers={operation_header (;operation_header)*}]

DESCRIPTION

  Deploys the application designated by the file_path or enables an already
  existing but disabled in the repository deployment designated by the name
  argument. If executed w/o arguments, will list all the existing deployments.

ARGUMENTS

 file_path         - the path to the application to deploy. Required in case the
                     deployment doesn't exist in the repository.
                     The path can be either absolute or relative to the current
                     directory.

 --name            - the unique name of the deployment. If the file path
                     argument is specified the name argument is optional with
                     the file name been the default value. If the file path
                     argument isn't specified then the command is supposed to
                     enable an already existing but disabled deployment, and in
                     this case the name argument is required.

 --runtime-name    - optional, the runtime name for the deployment. This will
                     form the basis for such things as default Java EE
...

El proceso de despliegue es muy simple y a la vez muy potente, como ejemplo:

 $ deploy /path/to/test-application.war --all-server-groups

 $ deploy /path/to/test-application.war --server-groups=server_group_1,server_group_2

Repliegue de aplicaciones en JBoss EAP 6.2

Para replegar una aplicación se utilizará el comando undeploy. El procedimiento y los parámetros son muy similares a los del comando deploy. Se muestra a continuación un resumen :

SYNOPSIS

    undeploy name [--server-groups=group_name (,group_name)* |
                   --all-relevant-server-groups] [--keep-content]
                  [--headers={operation_header (;operation_header)*}]

DESCRIPTION

    Undeploys the deployment with the given name and, depending on the
    arguments, removes its content from the repository.
    If the deployment name isn't specified, prints the list of all the existing
    deployments.

ARGUMENTS

 name             - the name of the deployment to undeploy.

 --server-groups  - comma separated list of server group names the undeploy
                    command should apply to. Either server-groups or
                    all-relevant-server-groups is required in the domain mode.
                    This argument is not applicable in the standalone mode.

 --all-relevant-server-groups   - indicates that undeploy should apply to all
                                  the server groups in which the deployment is
                    enabled. Either server-groups or all-relevant-server-groups
                    is required in domain mode. This argument is not applicable
                    in the standalone mode.

--keep-content   - by default undeploy, besides disabling the deployment, also
                    removes its content from the repository. The presence of
...

Catálogo 2024

Conoce nuestra oferta formativa para este año

Catálogo IA

Descarga nuestro catálogo específico de Inteligencia Artificial

Últimas entradas