Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

Capítulo 2. Preparação para a Migração [Esta é uma tradução automática]

2.1. Visão Geral da Preparação [Esta é uma tradução automática]

No JBoss EAP 7, foi feito um esforço para fornecer compatibilidade retroativa para os aplicativos do JBoss EAP 6. No entanto, se seu aplicativo usar recursos que foram reprovados ou a funcionalidade que foi removida do JBoss EAP 7, talvez seja necessário fazer alterações no código do aplicativo.

Além disso, várias coisas mudaram nesta versão que podem impactar a implantação de aplicativos do JBoss EAP 7. É recomendável que você faça alguma pesquisa e planejamento antes de tentar migrar seu aplicativo.

Depois que você se familiarizar com as alterações dos recursos, com os materiais de desenvolvimento e as ferramentas que podem auxiliar os seus eforços de migração, você pode começar a avaliar os seus aplicativos e a configuração do seu servidor para determinar as alterações necessárias para a execução do JBoss EAP 7.

2.2. Revise os Recursos do Java EE 7 [Esta é uma tradução automática]

O Java EE 7 inclui diversas melhorias para facilitar o desenvolvimento e a execução dos aplicativos com muitos recursos em nuvens públicas e privadas. Ele incorpora novos recursos e os padrões mais recentes, como HTML5, WebSocket, JSON, Batch e Concurrency Utilities. As atualizações incluem 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 e Bean Validation 1.1.

Você pode encontrar mais informações sobre o Java EE 7, incluindo tutoriais, no site da Oracle: Java EE em um relance

2.3. Revise O Que Há de Novo no JBoss EAP 7 [Esta é uma tradução automática]

O JBoss EAP 7 inclui algumas melhorias e upgrades importantes com relação ao último lançamento.

Java EE 7
O JBoss EAP 7 é uma implementação certificada do Java EE 7, atendendo tanto ao Perfil da Web quanto às especificações completas da plataforma. Também inclui suporte para as últimas iterações do CDI 1.2 e do Web Sockets 1.1.
Undertow
O Undertow é um servidor web eficaz, flexível e leve que faz parte do JBoss EAP 7, substituindo o JBoss Web. Escrito em Java, ele foi designado para máxima escalabilidade e produtividade e fornece suporte às tecnologias da web mais recentes, como o novo padrão HTTP/2.
Apache ActiveMQ Artemis
O Apache ActiveMQ Artemis é o novo provedor de mensagens interno do JBoss EAP 7. Baseado na doação de código do HornetQ, este subprojeto de Apache fornece um desempenho excelente baseado em uma arquitetura não bloqueadora comprovada.
IronJacamar 1.2
O IronJacamar mais recente fornece um suporte estável e com muitos recursos ao JCA e DataSources.
JBossWS 5
A quinta geração do JBossWS é um grande avanço, trazendo novos recursos e melhorias de desempenho para os serviços web do JBoss EAP 7.
Alterações SPI RESTEasy [Esta é uma tradução automática]
O JBoss EAP 7 inclui a última geração de RESTEasy. Ele vai além das APIs REST Java EE padrão (JAX-RS 2.0), fornecendo várias extensões úteis, como JSON Web Encryption, Jackson, JSON-P e Jettison.
OpenJDK ORB
O JBoss EAP 7 substituiu a implementação do JacORB IIOP com uma ramificação downstream do OpenJDK ORB, gerando melhor interoperabilidade para o JVM ORB e o Java EE RI.
Clusterização Repleta de Recursos
O suporte de clusterização foi altamente refatorado no JBoss EAP 7 e inclui várias APIs públicas para o acesso de aplicativos.
Introdução [Esta é uma tradução automática]
Ao utilizar o upgrade do HTTP, o JBoss EAP 7 mudou praticamente todos os protocolos para serem multiplexados via duas portas HTTP apenas: uma porta de gerenciamento (9990) e uma porta do aplicativo (8080).
Registro em Log Avançado
Agora a API de gerenciamento fornece suporte para a habilidade de listar e visualizar os arquivos de log disponíveis em um servidor, ou até mesmo definir formatadores personalizados além do formatador padrão. A configuração do registro em log da implantação também foi amplamente melhorada.

Para uma lista completa dos novos recursos introduzidos no JBoss EAP 7.0, veja Novos recursos e aprimoramentos no JBoss EAP Notas de versão 7.0.0.

Mudanças de Configuração de Mensagens no JBoss EAP 7.1 [Esta é uma tradução automática]

Élitro
O Elytron, baseado no projeto WildFly Elytron, é o novo framework de segurança do JBoss EAP 7.1. Ele é projetado para unificar a segurança em todo o servidor de aplicativos.
Mudanças no gerenciamento de JMX [Esta é uma tradução automática]
O console de gerenciamento foi aprimorado para fornecer a capacidade de configurar mais subsistemas, fornecer transaction subsistema e métricas de recurso de transação, além de gerenciar muitas configurações adicionais.
Mudanças no gerenciamento de JMX [Esta é uma tradução automática]
A CLI de gerenciamento fornece suporte aprimorado para resposta e anexos de arquivo, configuração de módulo e suporte a depuração através do echo-command argumento.

Para a lista completa dos novos recursos introduzidos no JBoss EAP 7.1, veja Novos recursos e aprimoramentos no Notas de versão 7.1.0 no Portal do Cliente Red Hat.

2.4. Verifique a lista de recursos preteridos e sem suporte [Esta é uma tradução automática]

Antes de migrar seu aplicativo para o JBoss EAP 7, esteja ciente de que alguns recursos que estavam disponíveis em versões anteriores do JBoss EAP podem ser preteridos ou não mais suportados.

O suporte para algumas tecnologias foi removido devido ao alto custo de manutenção, pouco interesse da comunidade e soluções alternativas muito melhores. O que segue é um breve resumo de alguns dos recursos sem suporte.

Migrar de beans de entidade para JPA [Esta é uma tradução automática]
EJB entity beans não são mais suportados. Caso seu aplicativo utilizar EJB entity beans, você deve migrar o código para usar JPA, que oferece uma API muito mais eficiente e flexível.
JAX-RPC
Como JAX-WS offerece uma solução muito mais precisa e completa, o código escrito para JAX-RPC deve ser migrado para utilizar JAX-WS.
JSR-88
A especificação de API de implantação de aplicativos Java EE (JSR-88), que definia um contrato para habilitar ferramentas de múltiplos fornecedores para configurar e implantar aplicativos em qualquer produto de plataforma Java EE, não foi amplamente adotada. Você deve utilizar outra opção do JBoss EAP com suporte para implantação de aplicativos, como o console de gerenciamento, a CLI de gerenciamento, o escâner de implantação ou Maven.
Configurando um Adaptador de Recursos JMS Genérico [Esta é uma tradução automática]
  • No JBoss EAP 7.0, a capacidade de configurar um adaptador de recursos JMS genérico para conectar-se a um provedor JMS não é suportada.
  • No JBoss EAP 7.1. a capacidade de configurar um adaptador de recursos JMS genérico para conectar-se a um provedor JMS é suportada.

Para obter uma lista completa de recursos obsoletos e não suportados no JBoss EAP 7.0, consulte Funcionalidade não suportada e descontinuada no JBoss EAP Notas de versão 7.0.0 no Portal do Cliente Red Hat.

Para obter uma lista completa de recursos obsoletos e não suportados no JBoss EAP 7.1, consulte Funcionalidade não suportada e descontinuada no JBoss EAP Notas de versão 7.1.0 no Portal do Cliente Red Hat.

2.5. Verifique a documentação de introdução do JBoss EAP [Esta é uma tradução automática]

Certifique-se de revisar o JBoss EAP Guia de Introdução. Contém as seguintes informações importantes:

  • Como baixar e instalar o JBoss EAP 7
  • Como baixar e instalar o Red Hat JBoss Developer Studio
  • Como configurar o Maven para seu ambiente de desenvolvimento, gerenciar dependências de projetos e configurar seus projetos para utilizar artefatos da Estrutura de Produtos (BOM) do JBoss EAP
  • Como baixar e executar os aplicativos de exemplo de início rápido que são enviados com o produto.

2.6. Análise e Planejamento de Migração [Esta é uma tradução automática]

Cada configuração de aplicativo e servidor é exclusiva e você deve entender completamente os componentes e a arquitetura do aplicativo existente e da plataforma do servidor antes de tentar a migração. Seu plano de migração deve incluir um roteiro detalhado para testes e distribuição para produção que leve em consideração as informações a seguir.

Identifica as pessoas responsáveis pela migração
Identifique as partes interessadas, gerentes de projeto, desenvolvedores, administradores e outras pessoas responsáveis ​​pela migração.
Verifica a configuração da plataforma do servidor de aplicativos e hardware

Analisa o servidor de aplicativos existente e configurações de plataforma para determinar como eles são impactados pelas alterações de recursos no JBoss EAP 7. A análise deve incluir os seguintes itens:

  • Sistemas operacionais e versões
  • Banco de dados utilizados pelos aplicativos
  • Servidores da Web
  • Arquitetura de segurança
  • Número e tipo de processadores
  • Quantidade de memória
  • Quantidade de armazenamento no disco físico
  • Migrar dados de mensagem [Esta é uma tradução automática]
  • Outros componentes que podem ser afetados pela migração
Verifique o ambiente de produção atual

Você deve planejar a criação do ambiente de produção o mais semelhante quanto possível para testar e preparar o processo de migração.

  • Leve em conta quaisquer configurações de cluster. Vejo Atualizando um Cluster no JBoss EAP Guia de patch e atualização para obter mais informações sobre como migrar clusters.
  • Caso você esteja atualmente executando em um domínio gerenciado amplo, considere uma abordagem gradual de migração.
  • Determine se você precisa migrar algum banco de dados ou dados de mensagens
Examine e entenda os aplicativos existentes

Examine minuciosamente o aplicativo JBoss EAP 6 existente. Esteja totalmente familiarizado com sua arquitetura, funções, recursos e componentes, incluindo:

  • A versão JVM
  • Integração com outros componentes middleware de servidores dos aplicativos da Red Hat
  • Integração com software proprietário de terceiros
  • Utilização de recursos preteridos que precisarão ser substituídos
  • Configuração de aplicativos incluindo descritor de implementação, JNDI, persistência, configuração JDBC e pooling, tópicos JMS e filas, e registro em log.

Identificar quaisquer incompatibilidades de código ou configuração que necessitarão modificações durante a migração para JBoss EAP 7.

Crie um plano teste detalhado
  • O plano deve incluir teste de regressão e requisitos de critérios de aceitação.
  • Deve também incluir teste de desempenho.
  • Estabeleça um ambiente de teste tão semelhante quanto possível do ambiente de produção para testar a migração antes do lançamento para produção.
  • Tenha certeza de que criou um backup e um plano de backup!
Revise o conteúdo nos Guias de Migração [Esta é uma tradução automática]
  • Avalie as competências da equipe de desenvolvimento e planeje treinamento ou auxílio de consultoria suplementar.
  • Esteja ciente de que serão necessários hardwares suplementares e outros recursos para preparar e testar durante o processo de migração até que a tarefa esteja completa.
  • Determine se qualquer treinamento formal será necessário. Caso afirmativo, adicione ao cronograma.
Execute o plano
Reúna os recursos necessários e implemente o plano de migração.
Importante

Antes de fazer quaisquer modificações em seus aplicativos, tenha certeza de que criou uma cópia de backup.

2.7. Faça um backup dos dados importantes e verifique o estado do servidor [Esta é uma tradução automática]

Antes de migrar seu aplicativo, você precisa estar ciente dos possíveis problemas:

  • A migração pode remover pastas temporárias. Qualquer implementação armazenada no data/content/ O diretório deve ser submetido a backup antes da migração e restaurado após a conclusão. Caso contrário, o servidor não será iniciado devido ao conteúdo ausente.
  • Antes da migração, manipule todas as transações abertas e exclua data/tx-object-store/ diretório de transação.
  • Os dados do temporizador persistente data/timer-service-data deve ser verificado para determinar se é compatível. Antes da migração, revise o deployment-* arquivos nesse diretório para determinar quais cronômetros ainda estão em uso.

Certifique-se também de fazer o backup das configurações do servidor atual e aplicativos antes de começar.

2.8. Migrando uma instalação RPM [Esta é uma tradução automática]

Importante

Não é fornecido suporte para mais de uma instância de RPM instalada de JBoss EAP em um único Servidor Red Hat Enterprise Linux. Como resultado, nós recomendamos que você migre sua instalação do JBoss EAP para uma nova máquina quando migrar para JBoss EAP 7.

Quando migrar uma instalação RPM de JBoss EAP a partir do JBoss EAP 6 para JBoss EAP 7, certifique-se que JBoss EAP 7 esteja instalado em uma máquina que não tem uma instalação RPM de JBoss EAP existente.

Para instalar o JBoss EAP 7 usando RPMs, veja o JBoss EAP Guia de instalação.

O aviso de migração neste guia também se aplica à migração de instalações RPM do JBoss EAP, mas você pode precisar alterar algumas etapas (como iniciar o JBoss EAP) para adequar-se a uma instalação RPM em comparação a uma instalação ZIP ou de instalação.

2.9. Migrar o JBoss EAP para ser executado como um serviço [Esta é uma tradução automática]

Se você executar o JBoss EAP 6 como um serviço, não deixe de revisar Configurando o JBoss EAP para Executar como um Serviço no JBoss EAP Guia de instalação para obter instruções de configuração atualizadas para o JBoss EAP 7.