Compartilhar via


Avaliar aplicativos Spring com o Analisador de Adequação à Nuvem

Este guia descreve como avaliar aplicativos Spring com o CSA (Cloud Suitability Analyzer) para avaliar sua preparação para migrar para a nuvem.

Quando devo usar o Analisador de Adequação à Nuvem?

O Analisador de Adequação de Nuvem é uma ferramenta de software livre desenvolvida pelo VMware. Você pode usá-lo para avaliar seus aplicativos Spring, Spring Boot e Spring Cloud para determinar o quão prontos eles estão para a nuvem.

Você pode baixar o Analisador de Adequação à Nuvem em seu ambiente de desenvolvimento e examinar o código-fonte para avaliação. Todos os resultados são mantidos em seu ambiente local. O relatório de avaliação fornece uma estimativa de quanto esforço é necessário para migrar seu aplicativo Spring para a nuvem. O relatório também lista problemas de nível de linha de código classificados por importância.

Observação

Use o Chrome como o navegador recomendado se outros navegadores não abrirem corretamente o portal da Web do Analisador de Adequação à Nuvem.

Quais resultados posso obter do Analisador de Adequação à Nuvem?

As seções a seguir descrevem os resultados produzidos pelo Cloud Suitability Analyzer.

Resumo de um grupo de aplicativos

O Analisador de Adequação à Nuvem estima a preparação de seus aplicativos Spring em relação a plataformas de nuvem, correspondendo padrões em relação ao código-fonte. A ferramenta atribui a cada problema uma pontuação bruta com base em um conjunto de regras predefinidas ou personalizadas. Em seguida, a ferramenta calcula uma pontuação técnica variando de 0 a 10 para cada aplicativo com base na soma das pontuações brutas. Quanto mais pronto para a nuvem um aplicativo estiver, maior será sua pontuação técnica.

Você pode encontrar a lista de aplicativos com sua respectiva pontuação técnica na página Resumo do relatório de avaliação. A página de resumo também lista outras informações, como linhas de código e número de arquivos verificados.

Sempre que você executa uma avaliação, a ferramenta registra um novo relatório. Você pode usar o controle Selecionar Execução na página Resumo para exibir e comparar diferentes versões de relatório e ver o progresso do esforço de migração.

Captura de tela da página Resumo do Analisador de Adequação à Nuvem.

Exibição mais próxima de um aplicativo

Para obter a lista de problemas específicos de nível de linha de código, você pode encontrar um relatório detalhado na página Aplicativo . Esta página lista os problemas de cada aplicativo e os classifica em importância como "alto", "médio" ou "baixo". Problemas "altos" são correções obrigatórias que exigem esforço manual, problemas "médios" são recomendados para corrigir e problemas "baixos" são meramente informativos. Você também pode encontrar o nome do arquivo, o número da linha e o esforço estimado necessário para cada problema no relatório.

Para ver os resultados da avaliação de um aplicativo, defina Selecionar Executar para a versão que você deseja ver e defina Aplicativo como o nome do aplicativo. Na parte superior da guia Descobertas , você pode selecionar um grupo de marcas para filtrar os resultados e ver apenas as em que deseja se concentrar.

Captura de tela da página Aplicativo analisador de adequação à nuvem.

Informações detalhadas para um problema específico

Na página Aplicativo , você pode selecionar a ID de um problema para ver informações detalhadas e ações sugeridas. Essas informações incluem o caminho do arquivo de código-fonte com o problema encontrado, o padrão correspondente ao problema e a regra que descreve o padrão e a pontuação de esforço. Na seção Conselhos , você pode encontrar a explicação específica para o problema encontrado e a ação correspondente sugerida.

Captura de tela da página de detalhes do problema do Analisador de Adequação à Nuvem.

Como devo usar o Analisador de Adequação à Nuvem?

Você pode executar o Analisador de Adequação à Nuvem em três etapas: instalação, verificação e revisão.

  1. Instalação: baixe os binários do Analisador de Adequação à Nuvem e as regras personalizadas do Azure. Você pode substituir os binários pela versão mais recente do repositório VMware cloud-suitability-analyzer . Extraia o pacote e você deve encontrar os seguintes itens no mesmo diretório:

    • csa-l: binário CSA para Linux
    • csa: binário CSA para macOS
    • csa.exe: binário CSA para Windows
    • rules: diretório que contém regras personalizadas do Azure
    • bins.yaml: arquivo necessário para regras personalizadas
    • run-csa-xxx: script único específico do sistema operacional que executa todos os comandos CSA necessários para os cenários usuais

    Observação

    Todos os exemplos neste artigo usam a versão linux do script e binário. Os parâmetros nos comandos também são aplicáveis ao Windows e ao macOS.

  2. Verificar: inicie o terminal e execute o script ou o binário com parâmetros -p <src_dir>, conforme mostrado nos seguintes exemplos:

    ./run-csa-linux.sh -p <src_dir>
    

    ou

    ./csa-l -p <src_dir>
    

    O diretório <src_dir> contém vários subdiretórios com o código-fonte do aplicativo Spring. Essa operação examina todos esses projetos em uma execução e armazena os resultados em um arquivo chamado csa.db. As verificações subsequentes armazenam os resultados no mesmo arquivo csa.db .

    Captura de tela mostrando o script do Analisador de Adequação à Nuvem em execução em uma janela do Bash.

  3. Revisão: quando você executa o script, ele inicia automaticamente o portal da Web. Como alternativa, você pode usar o comando a seguir. O portal da Web mostra a página Resumo por padrão.

    ./csa-l ui
    

Como devo personalizar as regras?

As seções a seguir descrevem as regras e como personalizá-las.

Listar regras em vigor

No portal da Web, a página Regras mostra todas as regras usadas para corresponder aos problemas listados na página Aplicativo . Você também pode encontrar detalhes para cada regra.

Captura de tela da página Regra do Analisador de Adequação à Nuvem.

A lista a seguir mostra algumas das regras personalizadas do Azure:

  • Migração para a nuvem em geral
    • Caminho do Windows para o caminho do Linux
    • Destino de log para STDOUT
    • Armazenamento local para o Compartilhamento de Arquivos do Azure com o protocolo SMB/NFS
  • Regras de atualização do JDK
    • Verificar a versão do JDK
  • Atualização do Spring Boot/Cloud
    • Verificar a versão do Spring Boot
    • Verificar a versão do Spring Cloud
    • Substituir o ponto de extremidade do cliente Eureka
    • Substituir o ponto de extremidade do cliente de configuração
    • Remover Zipkin e usar o Azure Monitor

Exportar regras

Para editar as regras ou escrever suas próprias regras, primeiro exporte as regras atuais para usar como versões base que você pode modificar. Para exportar as regras, use o seguinte comando:

./csa-l rules export --output-dir=<output_dir>

Quando o comando retorna com êxito, os arquivos de configuração que descrevem as regras estão no diretório de saída especificado.

Editar regras

Você pode editar cada regra independentemente com um editor de texto. Você pode encontrar a explicação detalhada de cada campo no manual do usuário disponível no repositório cloud-suitability-analyzer .

Captura de tela de Visual Studio Code com o arquivo de regras aberto.

Regras de importação

Para adicionar suas próprias regras ou remover regras que você não precisa, coloque as regras desejadas no mesmo diretório e importe esse diretório. Use as seguintes etapas para adicionar ou remover regras:

  1. Antes de importar as regras, use o seguinte comando para limpar as regras efetivas e começar de um limpo slate:

    ./csa-l rules delete-all
    
  2. Depois de limpar as regras, use o seguinte comando para importar seu próprio conjunto de regras:

    ./csa-l rules import --rules-dir=<input_dir>
    
  3. Agora, use o seguinte comando para verificar o código-fonte novamente:

    ./csa-l -p <src_dir>
    
  4. Em seguida, use o seguinte comando para exibir os resultados:

    ./csa-l ui
    

Agora você pode ver a página Regras atualizada com o conjunto de regras especificado.

Para simplesmente esse processo, recomendamos que você atualize as regras diretamente no diretório de regras do projeto azure-spring-suitability-rules e use o seguinte comando para executar o script:

./run-csa-linux.sh -p <src_dir>

Esse comando recarrega automaticamente as regras, recana o código-fonte e inicia o portal da Web.

Plataformas de destino para migração

Há várias plataformas de hospedagem no Azure que podem hospedar seus aplicativos Spring. Para obter mais informações, consulte Comparar opções de hospedagem de aplicativo Java no Azure.

O Azure Spring Apps é um serviço totalmente gerenciado para desenvolvedores do Spring. Com o Azure Spring Apps, você pode se concentrar em seu código e gerenciar os aplicativos com monitoramento pronto para uso, descoberta de serviço, gerenciamento de configuração, integração de CI/CD, implantação azul-verde e muito mais. Para obter mais informações, consulte Migrar aplicativos Spring Cloud para o Azure Spring Apps. Muitas das etapas nas fases de pré-migração e migração já estão abordadas nas regras personalizadas do Azure para o Analisador de Adequação à Nuvem.

Próximas etapas

Para obter mais informações, consulte o manual do usuário no repositório cloud-suitability-analyzer .