Mudar a plataforma de aplicativos Linux para contêineres

O guia Migrate to Containers a integração com o Cloud Code permite modernizar os componentes de aplicativos Linux executados em máquinas virtuais (VMs) e gerar artefatos que podem ser implantados em Google Kubernetes Engine e Cloud Run diretamente usando uma máquina Linux.

Neste guia, você vai aprender a transformar um aplicativo em uma contêiner do GKE usando o Cloud Code no seu ambiente de desenvolvimento integrado em uma máquina Linux.

Este guia é destinado a desenvolvedores em uma máquina Linux que tenham conhecimento do VS Code, estejam familiarizados com o Google Cloud e tenham uma VM executando o componente do aplicativo.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Google Kubernetes Engine API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Google Kubernetes Engine API.

    Enable the API

  8. Instale a extensão do Cloud Code, caso ainda não tenha feito isso.
  9. Crie e configure um cluster do GKE.
  10. Confirme que você sabe o tipo de migração que quer realizar. Para mais informações sobre cargas de trabalho compatíveis, consulte Revise as versões compatíveis do SO, das cargas de trabalho e do Kubernetes.
  11. Preparação sua origem e as máquinas locais para modernização. O Cloud Code só oferece suporte ao Linux para modernização.

Adicionar uma origem de mudança de plataforma

Nesta seção, você vai instalar a CLI do discovery client (mcdc) da Central de migração e outras Migre para as ferramentas de contêineres na sua máquina local, caso ainda não tenha feito isso e adicione uma origem de replataforma seguindo estas etapas:

  1. Na barra de atividades do seu ambiente de desenvolvimento integrado, clique em Cloud Code. e abra o explorador Replataforma Apps.

  2. Se esta for a primeira vez que você usa o Migrate to Containers no Cloud Code, será necessário instalar a CLI mcdc e outras ferramentas do Migrate to Containers na sua máquina local clicando em Install tools. Do contrário, avance para a próxima etapa.

  3. Clique em Editar origens. Isso abre um arquivo mcdc-sources.json vazio. Adicione as origens no seguinte formato:

    [
      {
        "title": "SOURCE_NAME",
        "host": "HOSTNAME",
        "user": "USER",
        "identityFile":"IDENTITY-FILE-PATH"
      }
    ]
    
  4. Para ver as fontes no explorador Replatform Apps, mantenha o cursor sobre o explorador Replatform Apps e clique no botão armazenado em cache Reload sources que aparece.

Opcional: gerar uma avaliação de adequação

Antes de tentar migrar o aplicativo para um contêiner, recomendamos que você gere uma avaliação de ajuste da sua origem, que notifica se ela é capaz de migrar um contêiner.

Para gerar uma avaliação de ajuste da sua fonte, clique com o botão direito do mouse na fonte e selecione Avaliar fonte. Isso abre o terminal no seu ambiente de desenvolvimento integrado e mostra os registros da avaliação da sua origem.

Quando a avaliação for concluída, o mcdc vai gerar um relatório de avaliação de ajuste no seu ambiente de desenvolvimento integrado.

Se as suas fontes forem consideradas compatíveis, você poderá reformular a plataforma. seu aplicativo.

Redefinir a plataforma do aplicativo

O Cloud Code cria um espaço de trabalho dedicado para cada replataforma e permite executar as tarefas Copiar, Analisar e Gerar no espaço de trabalho para automatizar as etapas de reformulação. Se você executar a tarefa Generate sem executar primeiro as tarefas Copy e Analyze, elas serão executadas automaticamente. antes de gerar os artefatos.

As seções a seguir orientam você na execução de cada uma dessas tarefas e replataforma do aplicativo para um contêiner usando o Cloud Code.

Para saber mais sobre o ciclo de vida de uma migração, consulte Arquitetura da CLI do Migrate to Containers.

Criar um novo espaço de trabalho de replataformação

Antes de criar um novo espaço de trabalho de replataforma, você precisa saber quais parâmetros de migração selecionar para o tipo de migração. Para mais informações sobre os parâmetros de cada tipo de migração, consulte Crie um plano de migração.

Para criar um novo espaço de trabalho de mudança de plataforma com artefatos no seu ambiente de desenvolvimento integrado, siga estas etapas:

  1. No explorador Replatform Apps, clique com o botão direito do mouse na fonte que você quer mude de plataforma e clique em Replataforma.

  2. Na lista de opções que aparece no menu, selecione uma nova plataforma. jornada.

  3. Selecione um novo diretório de espaço de trabalho para migrar seu aplicativo, clique em OK e em Create replatform workspace.

  4. Selecione os parâmetros de migração para o tipo de migração.

  5. Opcional: se você selecionou o tipo de migração do WebSphere e quer usar um verificador binário, selecione o arquivo binaryAppScanner.jar.

    A geração do espaço de trabalho leva alguns segundos. Isso abre o novo diretório de espaço de trabalho em uma nova janela do ambiente de desenvolvimento integrado.

Copie arquivos da VM para o espaço de trabalho

Para copiar os arquivos da VM para o espaço de trabalho no ambiente de desenvolvimento integrado, siga estas etapas:

  1. Opcional: a CLI mcdc aplica filtros para reduzir o tamanho da cópia, mas é possível modificar o arquivo filters.txt para reduzir ainda mais o tamanho da cópia. Para saber como reduzir o tamanho da cópia, consulte Reduzir o tamanho do sistema de arquivos copiado.

  2. Abra a paleta de comandos pressionando Ctrl+Shift+P.

  3. Pesquise e selecione Tarefas: executar tarefa e m2c: copiar. A cópia de arquivos pode levar alguns minutos.

Analisar o sistema de arquivos da VM e gerar um plano de migração

Para analisar o sistema de arquivos da VM e gerar um plano de migração, execute a seguintes etapas:

  1. Abra a paleta de comandos pressionando Ctrl+Shift+P.

  2. Pesquise e selecione Tarefas: executar tarefa e m2c: analisar.

    Se a tarefa de análise falhar, será necessário modificar os parâmetros de migração pelo arquivo analyze-args.ini. Esse arquivo tem uma linha por parâmetro com documentação que acompanha o parâmetro.

    Quando a análise é concluída, o Cloud Code cria um diretório chamado migration-plan, que contém os resultados da análise na forma de um arquivo config.yaml. É possível editar esse arquivo para mudar a forma como os artefatos são gerados.

    A estrutura do arquivo config.yaml varia de acordo com o tipo de migração. Para mais informações sobre os tipos de migração aceitos, consulte as seguintes páginas:

Gerar artefatos

Para gerar artefatos, execute a tarefa Generate no seu ambiente de desenvolvimento integrado. Se você ainda não executou as tarefas Copiar e Analisar nas seções anteriores, a tarefa Generate os executa automaticamente antes de gerar os artefatos.

Para gerar os artefatos, siga estas etapas:

  1. Abra a paleta de comandos pressionando Ctrl+Shift+P.

  2. Pesquise e selecione Tarefas: executar tarefa e m2c: gerar. Isso gera os artefatos no diretório src, que contém um Arquivo skaffold.yaml usado para criar e implantar uma imagem de contêiner. Cada tipo de migração gera artefatos diferentes, mas todos os tipos de migração geralmente criam um ou mais arquivos Docker e uma especificação de implantação do GKE que skaffold.yaml faz referência.

    Quando a geração de artefatos for concluída, você vai concluir a mudança de plataforma do seu o aplicativo.

  3. Opcional: se você quiser modificar o plano de migração, edite o arquivo config.yaml e execute novamente a tarefa m2c: Generate.

    Caso contrário, se você estiver satisfeito com os resultados da migração, prossiga para executar o aplicativo em um contêiner do GKE.

Executar seu aplicativo em um contêiner do GKE

Nesta seção, você vai executar o aplicativo com a nova plataforma em um contêiner do GKE, conferir os registros do aplicativo em execução e limpar os recursos.

Se você ainda não criou e configurou um cluster do GKE, siga as instruções em Criar e configurar um cluster do GKE no Cloud Code para VS Code.

Para saber mais sobre a depuração de aplicativos do GKE, consulte Depure aplicativos do Kubernetes com o Cloud Code para VS Code.

Executar e conferir o aplicativo

Agora que está tudo pronto, você pode executar seu app e visualizá-lo ativo. O Cloud Code monitora seu sistema de arquivos em busca de alterações para que você possa editar e executar o app em tempo real.

Para executar seu aplicativo, siga estas etapas:

  1. Na barra de status do Cloud Code, clique no nome do projeto ativo.

    Nome do projeto ativo na barra de status

  2. No menu de seleção rápida exibido, selecione Executar no Kubernetes.

  3. Confirme se quer usar o contexto do cluster atual ou alternar para outro.

  4. Se solicitado, escolha um registro de imagem para enviar as imagens. Se você estiver criando um novo registro de imagem usando gcr.io/PROJECT_ID, verifique se ele está no mesmo projeto que seu cluster.

    Uma janela de saída será exibida para acompanhar o andamento do aplicativo em execução. Também há uma transmissão ao vivo dos registros do executar pods na saída do terminal.

  5. Depois que o aplicativo estiver em execução no Kubernetes, a janela de saída exibirá um endereço IP. Para usar esse endereço IP vinculado para acessar seu aplicativo, pressione Ctrl e clique no endereço.

Depois que a sessão de depuração começa, o painel Sessões de desenvolvimento mostra a visualização de geração de registros estruturada. Quando uma tarefa começa, ela aparece com um semicírculo giratório progress_activity.

Se uma tarefa for bem-sucedida, uma marca de seleção check_circle aparece ao lado da etapa.

Para conferir os detalhes de uma etapa, clique nela no painel Sessão de desenvolvimento. O painel "Saída" exibe a etapa na geração de registros.

Limpar

Depois de interromper o aplicativo, todos os recursos do Kubernetes implantados durante a execução são excluídos automaticamente.

Para evitar cobranças na sua conta por outros recursos usados neste guia de início rápido, exclua o projeto ou o cluster que você criou se quer reutilizá-lo.

Para excluir o cluster, siga estas etapas:

  1. Clique em . Cloud Code e, em seguida, expandir o explorador do Kubernetes.
  2. Mantenha o ponteiro sobre o nome do cluster e clique em open_in_new Abrir no console do Google Cloud.
  3. Clique em Excluir e em Excluir.

Para excluir o projeto (e os recursos associados, incluindo os clusters):

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Para excluir todos os arquivos locais criados durante o processo de mudança de plataforma:

  1. Abra a paleta de comandos (Ctrl+Shift+P).
  2. Pesquise e selecione Tarefas: Executar tarefa e m2c: Limpeza.