Capítulo 2. Preparación para la migración [Esto es una traducción automática]

2.1. Resumen de la preparación [Esto es una traducción automática]

En JBoss EAP 7, se hizo un esfuerzo para proporcionar compatibilidad con versiones anteriores para las aplicaciones JBoss EAP 6. Sin embargo, si su aplicación usa características que fueron desaprobadas o una funcionalidad que se eliminó de JBoss EAP 7, es posible que deba realizar cambios en el código de su aplicación.

Además, varias cosas han cambiado en esta versión que podrían afectar la implementación de las aplicaciones de JBoss EAP 7. Se recomienda que investigue y planifique antes de intentar migrar su aplicación.

Una vez que se sienta cómodo con los cambios de características, los materiales de desarrollo y las herramientas que pueden ayudarlo en sus esfuerzos de migración, puede comenzar a evaluar sus aplicaciones y la configuración de su servidor para determinar los cambios necesarios para ejecutar en JBoss EAP 7.

2.2. Revise las características de Java EE 7 [Esto es una traducción automática]

Java EE 7 incluye muchas mejoras para facilitar el desarrollo y la ejecución de aplicaciones ricas en funciones en nubes privadas y públicas. Incorpora nuevas funciones y los últimos estándares como HTML5, WebSocket, JSON, Batch y Concurrency Utilities. Las actualizaciones incluyen JPA 2.1, JAX-RS 2.0, Servlet 3.1, Expression Language 3.0, JMS 2.0. JSF 2.2, EJB 3.2, CDI 1.2 y Bean Validation 1.1.

Puede encontrar más información sobre Java EE 7, incluidos los tutoriales, en el sitio web de Oracle: Java EE de un vistazo

2.3. Revise las novedades de JBoss EAP 7 [Esto es una traducción automática]

JBoss EAP 7 incluye algunas mejoras notables y mejoras sobre la versión anterior.

Java EE 7
JBoss EAP 7 es una implementación certificada de Java EE 7, que cumple tanto con el perfil web como con las especificaciones completas de la plataforma. También incluye soporte para las últimas iteraciones de CDI 1.2 y Web Sockets 1.1.
Undertow
Undertow es el nuevo servidor web liviano, flexible y de alto rendimiento incluido en JBoss EAP 7, que reemplaza a JBoss Web. Escrito en Java, está diseñado para un rendimiento y una escalabilidad máximos. Es compatible con las últimas tecnologías web, como el nuevo estándar HTTP / 2.
Apache ActiveMQ Artemis
Apache ActiveMQ Artemis es el nuevo proveedor de mensajería incorporado de JBoss EAP 7. Basado en una donación de código de HornetQ, este subproyecto de Apache proporciona un rendimiento sobresaliente basado en una arquitectura comprobada de no bloqueo.
IronJacamar 1.2
El último IronJacamar proporciona un soporte estable y rico en características para JCA y DataSources.
JBossWS 5
La quinta generación de JBossWS es un gran avance, que aporta nuevas funciones y mejoras de rendimiento a los servicios web de JBoss EAP 7.
RESTEasy SPI Cambios [Esto es una traducción automática]
JBoss EAP 7 incluye la última generación de RESTEasy. Va más allá de las API REST estándar de Java EE (JAX-RS 2.0) al proporcionar una serie de extensiones útiles como JSON Web Encryption, Jackson, JSON-P y Jettison.
OpenJDK ORB
JBoss EAP 7 reemplazó la implementación de JacORB IIOP con una rama descendente de OpenJDK ORB, lo que mejoró la interoperabilidad con JVM ORB y Java EE RI.
Feature Rich Clustering
El soporte de clustering fue fuertemente refactorizado en JBoss EAP 7 e incluye varias API públicas para el acceso de las aplicaciones.
Introducción [Esto es una traducción automática]
Al utilizar la actualización HTTP, JBoss EAP 7 ha movido casi todos sus protocolos para ser multiplexados en solo dos puertos HTTP: un puerto de administración (9990) y un puerto de aplicación (8080).
Registro mejorado
La API de administración ahora es compatible con la capacidad de enumerar y ver los archivos de registro disponibles en un servidor, o incluso definir formateadores personalizados que no sean el formateador de patrones predeterminado. La configuración de inicio de sesión de implementación también se mejora en gran medida.

Para obtener una lista completa de las nuevas características introducidas en JBoss EAP 7.0, consulte Nuevas características y mejoras en el JBoss EAP 7.0.0 Notas de la versión.

Cambios en la configuración de mensajería en JBoss EAP 7.1 [Esto es una traducción automática]

Elitrono
Elytron, basado en el proyecto WildFly Elytron, es el nuevo marco de seguridad en JBoss EAP 7.1. Está diseñado para unificar la seguridad en todo el servidor de aplicaciones.
Cambios en la administración de JMX [Esto es una traducción automática]
La consola de administración se ha mejorado para proporcionar la capacidad de configurar más subsistemas, proporcionar mejoras transaction métricas de recursos de subsistema y transacción, y administrar muchas configuraciones adicionales.
Cambios en la administración de JMX [Esto es una traducción automática]
La CLI de administración proporciona compatibilidad mejorada para la respuesta y los archivos adjuntos, la configuración del módulo y el soporte de depuración a través del echo-command argumento.

Para obtener una lista completa de las nuevas características introducidas en JBoss EAP 7.1, consulte Nuevas características y mejoras en el 7.1.0 Notas de la versión en el portal de clientes de Red Hat.

2.4. Revisión de la lista de funcionalidades no soportadas y ya no utilizadas [Esto es una traducción automática]

Antes de migrar su aplicación a JBoss EAP 7, tenga en cuenta que algunas funciones que estaban disponibles en versiones anteriores de JBoss EAP podrían haber quedado en desuso o dejar de ser compatibles.

Se eliminó el soporte para algunas tecnologías debido al alto costo de mantenimiento, el bajo interés de la comunidad y soluciones alternativas mucho mejores. El siguiente es un breve resumen de algunas de las características no compatibles.

Migrar beans de entidad a JPA [Esto es una traducción automática]
Los beans de entidad EJB ya no son compatibles. Si su aplicación utiliza beans de entidad EJB, debe migrar el código para usar JPA, que ofrece una API mucho más eficiente y flexible.
JAX-RPC
Debido a que JAX-WS ofrece una solución mucho más precisa y completa, el código escrito para JAX-RPC se debe migrar para usar JAX-WS.
JSR-88
La especificación API de implementación de aplicaciones Java EE (JSR-88), que definió un contrato para permitir que herramientas de múltiples proveedores configuren e implementen aplicaciones en cualquier producto de plataforma Java EE, no fue ampliamente adoptada. Debe usar otra opción compatible con JBoss EAP para la implementación de aplicaciones, como la consola de administración, la CLI de administración, el escáner de implementación o Maven.
Configuración de un adaptador de recursos JMS genérico [Esto es una traducción automática]
  • En JBoss EAP 7.0, no se admite la capacidad de configurar un adaptador de recursos JMS genérico para conectarse a un proveedor JMS.
  • En JBoss EAP 7.1. se admite la capacidad de configurar un adaptador de recursos JMS genérico para conectarse a un proveedor JMS.

Para obtener una lista completa de las características desaprobadas y no admitidas en JBoss EAP 7.0, consulte Funcionalidad desatendida y no admitida en el JBoss EAP 7.0.0 Notas de la versión en el portal de clientes de Red Hat.

Para obtener una lista completa de las características obsoletas y no admitidas en JBoss EAP 7.1, consulte Funcionalidad desatendida y no admitida en el JBoss EAP 7.1.0 Notas de la versión en el portal de clientes de Red Hat.

2.5. Revise el material de JBoss EAP Getting Started [Esto es una traducción automática]

Asegúrese de revisar el JBoss EAP Guía de inicio. Contiene la siguiente información importante:

  • Cómo descargar e instalar JBoss EAP 7
  • Cómo descargar e instalar Red Hat JBoss Developer Studio
  • Cómo configurar Maven para su entorno de desarrollo, administrar dependencias de proyecto y configurar sus proyectos para utilizar los artefactos de la Lista de materiales de JBoss EAP (BOM)
  • Cómo descargar y ejecutar las aplicaciones de ejemplo de inicio rápido que se entregan con el producto

2.6. Análisis y planificación de la migración [Esto es una traducción automática]

Cada aplicación y configuración del servidor es única, y debe comprender a fondo los componentes y la arquitectura de la aplicación existente y la plataforma del servidor antes de intentar la migración. Su plan de migración debe incluir una hoja de ruta detallada para probar e implementar la producción que tenga en cuenta la siguiente información.

Identificar a las personas responsables de la migración
Identifique las partes interesadas, los gerentes de proyecto, los desarrolladores, los administradores y otras personas responsables de la migración.
Revise la configuración y el hardware de la plataforma del servidor de aplicaciones

Examine el servidor de aplicaciones existente y la configuración de la plataforma para determinar cómo se ven afectados por los cambios de características en JBoss EAP 7. La revisión debe incluir los siguientes elementos.

  • Sistemas operativos y versiones
  • Base de datos utilizada por las aplicaciones
  • Servidores web
  • Arquitectura de seguridad
  • Número y tipo de procesadores
  • Cantidad de memoria
  • Cantidad de almacenamiento en disco físico
  • Migrar datos de mensajería [Esto es una traducción automática]
  • Otros componentes que podrían verse afectados por la migración
Revise el entorno de producción actual

Debe planear recrear el entorno de producción lo más cerca posible para probar y organizar el proceso de migración.

  • Tenga en cuenta cualquier configuración de agrupación. Ver Actualización de un clúster en el JBoss EAP Guía de parches y actualizaciones para obtener más información acerca de cómo migrar clústeres.
  • Si actualmente está ejecutando un gran dominio administrado, considere un enfoque de migración gradual.
  • Determine si necesita migrar cualquier base de datos o datos de mensajes.
Examinar y comprender la aplicación existente

Examine a fondo la aplicación existente JBoss EAP 6. Familiarícese totalmente con su arquitectura, funciones, características y componentes, que incluyen:

  • La versión de JVM
  • Integración con otros componentes de middleware del servidor de aplicaciones Red Hat
  • Integración con software propietario de terceros
  • Uso de características obsoletas que requerirán reemplazo
  • Configuración de la aplicación que incluye descriptores de implementación, JNDI, persistencia, configuración y agrupamiento JDBC, temas y colas JMS y registro

Identifique cualquier código o incompatibilidades de configuración que requerirán modificaciones durante la migración a JBoss EAP 7.

Crear un plan de prueba detallado
  • El plan debe incluir pruebas de regresión y requisitos de criterios de aceptación.
  • También debe incluir pruebas de rendimiento.
  • Configure un entorno de transición lo más cercano posible al entorno de producción para probar la migración antes del lanzamiento a producción.
  • ¡Asegúrese de crear un plan de respaldo y retroceso!
Revise el contenido en las guías de migración [Esto es una traducción automática]
  • Evalúe las habilidades del equipo de desarrollo y planifique capacitación o ayuda de consultoría adicional.
  • Tenga en cuenta que se necesitarán hardware adicional y otros recursos para organizar y probar durante el proceso de migración hasta que se complete el esfuerzo.
  • Determine si se necesita alguna capacitación formal. Si es así, agréguelo al horario.
Ejecutar el plan
Reúna los recursos necesarios e implemente el plan de migración.
Importante

Antes de realizar modificaciones en su aplicación, asegúrese de crear una copia de seguridad.

2.7. Copia de seguridad de datos importantes y revisión del estado del servidor [Esto es una traducción automática]

Antes de migrar su aplicación, debe ser consciente de los siguientes problemas potenciales.

  • La migración puede eliminar carpetas temporales. Cualquier implementación almacenada en data/content/ el directorio se debe respaldar antes de la migración y se debe restaurar después de que se complete. De lo contrario, el servidor no podrá iniciarse debido al contenido faltante.
  • Antes de la migración, maneje cualquier transacción abierta y elimine data/tx-object-store/ directorio de transacciones
  • Los datos de temporizador persistentes en data/timer-service-data debe verificarse para determinar si es compatible. Antes de la migración, revise el deployment-* archivos en ese directorio para determinar qué temporizadores están todavía en uso.

Asegúrese de hacer una copia de seguridad de la configuración y las aplicaciones del servidor actual antes de comenzar.

2.8. Migrando una instalación RPM [Esto es una traducción automática]

Importante

No se admite tener más de una instancia de JBoss EAP instalada en RPM en un solo Servidor Red Hat Enterprise Linux. Como resultado, recomendamos que migre su instalación de JBoss EAP a una nueva máquina al migrar a JBoss EAP 7.

Al migrar una instalación de JBoss EAP RPM de JBoss EAP 6 a JBoss EAP 7, asegúrese de que JBoss EAP 7 esté instalado en una máquina que no tenga una instalación existente de JBoss EAP RPM.

Para instalar JBoss EAP 7 usando RPM, vea el JBoss EAP Guía de instalación.

El consejo de migración en esta guía también se aplica a la migración de instalaciones de RPM de JBoss EAP, pero es posible que deba modificar algunos pasos (como, por ejemplo, cómo iniciar JBoss EAP) para adaptarlos a una instalación de RPM en comparación con una instalación de ZIP o instalador.

2.9. Migrar JBoss EAP ejecutándose como un servicio [Esto es una traducción automática]

Si ejecuta JBoss EAP 6 como un servicio, asegúrese de revisar Configurando JBoss EAP para ejecutar como un servicio en el JBoss EAP Guía de instalación para obtener instrucciones de configuración actualizadas para JBoss EAP 7.