As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Avaliação
A avaliação de aplicações para conteinerização ajuda a descobrir todas as dependências e riscos. A avaliação também ajuda a classificar as aplicações em grupos prioritários para modernização e migração.
Durante a fase de avaliação, concentre-se nas seguintes áreas principais:
-
Dependências do sistema operacional para conteinerização — Ferramentas automatizadas de conteinerização, como o AWS App2Container, têm algumas limitações nas estruturas de aplicativos e nos sistemas operacionais para conteinerização. Para obter mais informações sobre as aplicações compatíveis, consulte a Documentação do App2Container.
-
Conformidade regulatória: é eficiente garantir que as aplicações conteinerizadas estejam em conformidade com todas as regulamentações antes de serem implantadas no ambiente de destino, em vez de agir de forma reativa após a implantação e mitigá-las. Verifique se há vulnerabilidades nas imagens, comunicação não autorizada entre contêineres, controles de acesso a contêineres e dados e verificações automatizadas para evitar atividades maliciosas.
-
Solução de recuperação de desastres (DR): cada aplicação tem seu próprio acordo de serviço (SLA) específico para tempo de inatividade. Lembre-se do objetivo de ponto de recuperação (RPO) e do objetivo de tempo de recuperação (RTO) ao planejar a distribuição dos clusters de contêineres. O App2Container, por padrão, implanta a aplicação em várias zonas de disponibilidade.
-
Armazenamento de dados: os contêineres são melhor usados como stateless. Para contêineres stateful, os dados devem ser armazenados externamente ao contêiner. Se um contêiner sair de serviço, você poderá criar um novo usando a imagem e o volume externo conectados sem perder dados.
-
Gerenciamento de configurações e segredos: o armazenamento de parâmetros do ambiente de destino ou o armazenamento secreto podem ser usados para armazenar e recuperar a configuração e os segredos do contêiner. É vital garantir que os segredos sejam acessíveis somente ao contêiner relevante. Todas as operações de configuração e os segredos devem ser registrados em log. O canal de comunicação entre o contêiner e o armazenamento de segredos deve ser seguro.
-
Gerenciamento de logs: para auditoria, os logs gerados por cada contêiner serão enviados para um serviço de gerenciamento de logs externo ao contêiner. Como uma aplicação consiste em vários serviços e processos, cada uma residindo em contêineres diferentes, os registros de cada contêiner devem ter um ID exclusivo.
-
Processo de compilação e implantação: a maioria das empresas tem algum tipo de processo de compilação e implantação para lançar aplicações e recursos. Para aproveitar as vantagens da conteinerização, a compilação e a implantação das aplicações devem ser automatizadas usando um pipeline de CI/CD. Um pipeline traz vantagens como provisionamento e descomissionamento da infraestrutura com um clique, implantações mais rápidas e à prova de erros, automação e tempo reduzido para lançar novos recursos.
-
Aplicações upstream e downstream: é prática recomendada colocar conteinerizar e migrar todas as aplicações dependentes em lotes. Em cenários em que isso não é viável, os canais de comunicação da aplicação conteinerizada para as aplicações upstream e downstream devem ser abertos com segurança. Certifique-se de que a largura de banda aceita por esse canal não interrompa a funcionalidade da aplicação.
-
Dependências de licenças: várias instâncias de uma aplicação são executadas em contêineres, o que pode se tornar caro. Verifique os contratos e a elegibilidade para implantar software em contêineres. Entenda quais ferramentas são usadas para medir o software consumido em contêineres.
-
Possibilidade de conteinerização em servidores de aplicações ou máquinas de trabalho: o processo de conteinerização consome recursos adicionais no servidor, como espaço em disco, capacidade computacional e memória. O servidor de aplicações deve ser analisado para garantir que seja capaz de suportar o processo de conteinerização. Caso contrário, uma máquina de trabalho que tenha os recursos necessários e seja capaz de se comunicar com o servidor de aplicações poderá ser usada.
-
Habilidades de desenvolvedor e suporte à produção em contêineres: a equipe de aplicações deve se aprimorar na tecnologia de conteinerização. A equipe deve ser capaz de solucionar problemas no processo, ajustar as configurações, se necessário, e oferecer suporte às aplicações implantadas em contêineres.
Você pode usar o App2Container para armazenar aplicativos Java em execução no Linux, como autônomos, Apache Tomcat JBoss, IBM, Oracle. WebSphere WebLogic O App2Container também pode ser usado para conteinerizar aplicações Java genéricas, como o Spring Boot. A conteinerização de aplicações funciona com microsserviços e aplicações distribuídas. Embora todas as aplicações Java possam ser modernizadas usando o App2Container, os critérios a seguir podem ajudar você a escolher as aplicações certos a serem modernizadas para migrações mais rápidas:
-
As aplicações empacotadas como um único binário são mais fáceis de conteinerizar. Além disso, as aplicações Java podem ser conteinerizadas com um Java Runtime Environment (JRE). Cada contêiner pode usar o JRE específico de que precisa.
-
Aplicações stateless são uma boa opção para modernização em contêineres. Essas aplicações armazenam o mínimo de informações localmente e guardam a maioria dos dados em um armazenamento de dados persistente.
-
As aplicações lançadas por meio de um pipeline de integração contínua e implantação contínua (CI/CD) são boas candidatas para a conteinerização. Conteinerize cada aplicação e inclua uma plataforma de orquestração de contêineres, como Amazon ECS ou Amazon EKS, que é gerenciada automaticamente pelo App2Container.
A maioria das aplicações corporativas é integrada a vários outros serviços para autenticação, armazenamento de dados persistente, armazenamento em cache, comunicação assíncrona, log e notificações. A aplicação conteinerizada deve ser testada on-premises com todos os pontos de integração existentes para facilitar o sucesso da conteinerização. Quando estiver pronto para migrar AWS, todos os pontos de integração e armazenamento de dados apropriados devem ser migrados para. AWS Todas as atualizações necessárias devem ser feitas na configuração antes que o contêiner da aplicação possa ser implantado na AWS.
Os dados armazenados em sistemas de arquivos podem ser migrados para AWS o uso de várias ferramentas
AWS fornece seu próprio serviço de monitoramento e visualização de dados operacionais chamado Amazon CloudWatch. Um CloudWatch agente pode ser embalado no contêiner junto com o aplicativo para usar esse serviço.
Para organizações em que o código fonte não está disponível ou não pode ser mantido, o App2Container é uma ótima opção para conteinerização, pois opera no ambiente do runtime da aplicação e não requer o código-fonte.