Neste guia, vai aprender a mudar a plataforma de uma aplicação existente para um contentor do GKE através da extensão do Cloud Code no seu IDE numa máquina Linux.
Este guia destina-se a programadores numa máquina Linux que tenham conhecimentos práticos do VS Code, estejam familiarizados com o Trusted Cloud by S3NSe tenham uma VM a executar o componente da respetiva aplicação.
Antes de começar
-
In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Trusted Cloud project.
-
Enable the Google Kubernetes Engine API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. - Instale a extensão Cloud Code se ainda não o fez.
- Crie e configure um cluster do GKE.
- Certifique-se de que sabe que tipo de migração quer fazer. Para mais informações sobre as cargas de trabalho suportadas, consulte Reveja as versões compatíveis do SO, das cargas de trabalho e do Kubernetes.
- Prepare as máquinas de origem e locais para a modernização. O Cloud Code só suporta o Linux para modernização.
Na barra de atividade do IDE, clique em
Cloud Code e, de seguida, expanda o explorador Replatform Apps.
Se for a primeira vez que usa a ferramenta Migrate to Containers no Cloud Code, tem de instalar a CLI e outras ferramentas do Migrate to Containers no seu computador local clicando em Instalar ferramentas.
mcdc
Caso contrário, avance para o passo seguinte.Clique em Editar origens. Esta ação abre um ficheiro
mcdc-sources.json
vazio. Adicione as suas fontes no seguinte formato:[ { "title": "SOURCE_NAME", "host": "HOSTNAME", "user": "USER", "identityFile":"IDENTITY-FILE-PATH" } ]
Para ver as origens no explorador Replataformar apps, passe o ponteiro do rato sobre o explorador Replataformar apps e clique no botão em cache Recarregar origens apresentado.
No explorador Replataformar apps, clique com o botão direito do rato na origem que quer replataformar e, de seguida, clique em Replatformar.
Na lista de opções apresentadas no menu, selecione um percurso de replataformação.
Selecione um novo diretório do espaço de trabalho para replataformar a sua aplicação, clique em OK e, de seguida, clique em Criar espaço de trabalho de replataformação.
Selecione os parâmetros de migração para o seu tipo de migração.
Opcional: se selecionou o tipo de migração do WebSphere e quer usar um analisador binário, selecione o ficheiro
binaryAppScanner.jar
.A geração do espaço de trabalho demora alguns segundos. Esta ação abre o novo diretório do espaço de trabalho numa nova janela do IDE.
Opcional: a CLI aplica filtros para reduzir o tamanho da cópia, mas pode modificar o ficheiro
filters.txt
para reduzir ainda mais o tamanho da cópia.mcdc
Para saber como reduzir o tamanho da cópia, consulte o artigo Reduza o tamanho do sistema de ficheiros copiado.Abra a paleta de comandos premindo Ctrl+Shift+P.
Pesquise e selecione Tasks: Run Task e, de seguida, selecione m2c: Copy. A cópia de ficheiros pode demorar alguns minutos.
Abra a paleta de comandos premindo Ctrl+Shift+P.
Pesquise e selecione Tasks: Run Task e, de seguida, selecione m2c: Analyze.
Se a tarefa de análise falhar, tem de modificar os parâmetros de migração através do ficheiro
analyze-args.ini
. Este ficheiro tem uma linha por parâmetro com documentação acompanhante sobre o parâmetro.Quando a análise é bem-sucedida, o Cloud Code cria um diretório denominado
migration-plan
que contém os resultados da análise sob a forma de um ficheiroconfig.yaml
. Pode editar este ficheiro para alterar a forma como os seus artefactos são gerados.A estrutura do ficheiro
config.yaml
varia consoante o tipo de migração. Para mais informações sobre os tipos de migração suportados, consulte as seguintes páginas:Abra a paleta de comandos premindo Ctrl+Shift+P.
Pesquise e selecione Tasks: Run Task e, de seguida, selecione m2c: Generate. Isto gera os artefactos no diretório
src
, que contém um ficheiroskaffold.yaml
usado para criar e implementar uma imagem de contentor. Cada tipo de migração gera artefactos diferentes, mas todos os tipos de migração criam normalmente um ou mais ficheiros Docker e uma especificação de implementação do GKE que oskaffold.yaml
referencia.Quando a geração de artefactos estiver concluída, a replataformação da sua aplicação está terminada!
Opcional: se quiser modificar o plano de migração, edite o
config.yaml
ficheiro e volte a executar a tarefa m2c: Generate.Caso contrário, se estiver satisfeito com os resultados da replataforma, pode continuar a executar a sua aplicação num contentor do GKE.
Na barra de estado do Cloud Code, clique no nome do projeto ativo.
No menu de seleção rápida apresentado, selecione Executar no Kubernetes.
Confirme se quer usar o contexto do cluster atual ou mudar para um diferente.
Se lhe for pedido, escolha um registo de imagens para enviar as imagens. Se estiver a criar um novo registo de imagens com
gcr.io/PROJECT_ID
, certifique-se de que o registo de imagens está no mesmo projeto que o cluster.É apresentada uma janela de saída onde pode acompanhar o progresso da sua aplicação em execução. Também vê uma stream em direto dos registos dos pods em execução na saída do terminal.
Depois de a aplicação estar em execução no Kubernetes, a janela de saída apresenta um endereço IP. Para usar este endereço IP associado para aceder à sua aplicação, prima Ctrl e clique no endereço.
- Clique em
Cloud Code e, de seguida, expanda o explorador Kubernetes.
- Passe o ponteiro do rato sobre o nome do cluster e, de seguida, clique em open_in_new Abrir na Trusted Cloud consola.
- Clique em Eliminar e, de seguida, em Eliminar.
- In the Trusted Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
- Abra a paleta de comandos (Ctrl+Shift+P).
- Pesquise e selecione Tasks: Run Task e, de seguida, selecione m2c: Cleanup.
Adicione uma origem de replataforma
Nesta secção, instala a CLI do cliente de descoberta do Migration Center (mcdc
) e outras ferramentas do Migrate to Containers na sua máquina local, se ainda não o tiver feito, e adiciona uma origem de replataforma seguindo estes passos:
Opcional: gere uma avaliação de adequação
Antes de tentar mudar a plataforma da sua aplicação para um contentor, recomendamos que gere uma avaliação de adequação da sua origem, que lhe envia uma notificação se a sua origem for capaz de mudar a plataforma de um contentor.
Para gerar uma avaliação de adequação da sua origem, clique com o botão direito do rato na origem e selecione Avaliar origem. Esta ação abre o terminal no IDE e apresenta os registos da avaliação da sua origem.
Quando a avaliação estiver concluída, o mcdc
gera um relatório de avaliação de adequação no seu IDE.
Se as suas fontes forem comunicadas como Adequadas, pode voltar a criar a sua aplicação.
Mude a plataforma da sua aplicação
O Cloud Code cria um espaço de trabalho dedicado para cada replataforma e permite-lhe executar as tarefas Copiar, Analisar e Gerar no espaço de trabalho para automatizar os passos de replataforma. Se executar a tarefa Gerar sem executar primeiro as tarefas Copiar e Analisar, estas são executadas automaticamente antes de gerar artefactos.
As secções seguintes explicam como realizar cada uma destas tarefas e reestruturar a sua aplicação para um contentor através do Cloud Code.
Para saber mais acerca do ciclo de vida de uma migração, consulte o artigo Migre para a arquitetura da CLI de contentores.
Crie um novo espaço de trabalho de replataforma
Antes de criar um novo espaço de trabalho de replataforma, tem de saber que parâmetros de migração selecionar para o seu tipo de migração. Para mais informações acerca dos parâmetros de cada tipo de migração, consulte Crie um plano de migração.
Para criar um novo espaço de trabalho de replataforma com artefactos no seu IDE, siga estes passos:
Copie ficheiros da sua VM para o seu espaço de trabalho
Para copiar os ficheiros da VM para o seu espaço de trabalho no IDE, siga os passos abaixo:
Analise o sistema de ficheiros da VM e gere um plano de migração
Para analisar o sistema de ficheiros da VM e gerar um plano de migração, siga os passos seguintes:
Gere artefactos
Para gerar artefactos, tem de executar a tarefa Generate no IDE. Se ainda não tiver executado as tarefas Copiar e Analisar nas secções anteriores, a tarefa Gerar executa-as automaticamente antes de gerar artefactos.
Para gerar os artefactos, siga estes passos:
Execute a sua aplicação num contentor do GKE
Nesta secção, executa a sua aplicação replataformada num contentor do GKE, vê os registos da aplicação em execução e limpa os recursos.
Se ainda não criou nem configurou um cluster do GKE, siga as instruções em Crie e configure um cluster do GKE no Cloud Code para VS Code.
Para saber mais sobre a depuração de aplicações do GKE, consulte o artigo Depure aplicações do Kubernetes com o Cloud Code para VS Code.
Execute e veja a sua aplicação
Agora que está tudo configurado, pode executar a aplicação e vê-la em direto. O Cloud Code monitoriza o seu sistema de ficheiros para detetar alterações, para que possa editar e executar novamente a sua app em tempo real.
Para executar a aplicação, siga estes passos:
Depois de iniciar a sessão de depuração, o painel Sessões de desenvolvimento apresenta a vista de registo estruturado. Quando uma tarefa começa, é apresentada com um semicírculo rotativo progress_activity.
Se uma tarefa for bem-sucedida, é apresentada uma marca de verificação check_circle junto ao passo.
Para ver os detalhes de um passo, clique no passo no painel Sessão de desenvolvimento. O painel Output apresenta o passo na saída de registo.
Limpar
Depois de parar a aplicação, todos os recursos do Kubernetes implementados durante a execução são eliminados automaticamente.
Para evitar incorrer em custos para a sua conta por outros recursos usados neste início rápido, certifique-se de que elimina o projeto ou o cluster que criou se quiser reutilizar o projeto.
Para eliminar o cluster:
Para eliminar o seu projeto (e os recursos associados, incluindo todos os clusters):
Para eliminar todos os ficheiros locais criados durante o processo de replataforma: