Implemente uma app Kubernetes com o Cloud Code para IntelliJ

Saiba como usar o Cloud Code for IntelliJ para implementar a sua primeira aplicação Kubernetes.

Neste início rápido, vai configurar uma nova aplicação Kubernetes com um modelo de Olá mundo inicial, executar a sua app num cluster, configurar a recompilação contínua para desenvolver a sua app de forma iterativa, depurar o código em execução e ver registos de streaming da sua aplicação em direto.

Embora recomendemos a utilização do Google Cloud para este guia, pode, em alternativa, usar o Cloud Code com um cluster local através de ferramentas como o minikube e o Docker Desktop. No entanto, as funcionalidades como a criação de clusters do GKE em direto e a entrega contínua integrada são melhor experimentadas com umGoogle Cloud projeto.

Antes de começar

Quer opte por usar um cluster local ou alojado na nuvem, para concluir este início rápido, siga estes passos:

  1. Instale o Git. O Git é necessário para copiar exemplos de código para o seu computador.
  2. Instale o Docker. O Docker é necessário para criar o código de exemplo. Certifique-se de que a sua conta de utilizador local consegue criar contentores.
  3. Instale o plug-in Cloud Code, se ainda não o fez.

Para concluir este início rápido com o Google Cloud, siga estes passos:

  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.

    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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Se estiver a usar um projeto existente para este guia, verifique se tem as autorizações necessárias para concluir este guia. Se criou um novo projeto, já tem as autorizações necessárias.

  4. Verify that billing is enabled for your Google Cloud project.

  5. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  6. In the Google Cloud console, on the project selector page, select or create a Google 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Se estiver a usar um projeto existente para este guia, verifique se tem as autorizações necessárias para concluir este guia. Se criou um novo projeto, já tem as autorizações necessárias.

  8. Verify that billing is enabled for your Google Cloud project.

  9. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  10. Funções necessárias

    Para receber as autorizações de que precisa para concluir este guia de início rápido com o Google Cloud, peça ao seu administrador para lhe conceder a função de IAM administrador do Kubernetes Engine (roles/container.admin) no seu projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

Crie uma aplicação

O Cloud Code inclui uma coleção de modelos de exemplos de código para começar. Para criar uma nova aplicação com um exemplo existente:

  1. No IDE, abra File > New Project e selecione Cloud Code: Kubernetes.

  2. Selecione um modelo Hello World na lista de aplicações iniciais. Lista de modelos disponíveis: Python, Go, NodeJS, Java hello world e aplicações de livro de visitas

  3. Escolha um nome para o projeto.

    Depois de clicar em Concluir, o Cloud Code clona o modelo escolhido e abre o projeto recém-criado para utilização.

    Para modelos Java, é-lhe pedido que importe os projetos Maven necessários para sincronizar o seu pom.xml. Clique em Adicionar como projeto Maven e, de seguida, clique em Importar alterações.

Escolha um cluster

Para desenvolver a sua aplicação, precisa de um cluster do Kubernetes associado alojado localmente com o minikube ou através de uma plataforma na nuvem, como um cluster do Google Kubernetes Engine.

Cluster local

Se ainda não tiver um cluster para usar neste início rápido, pode optar por executar a sua aplicação com um cluster minikube local gerido pelo Cloud Code. O Cloud Code inicia um cluster do minikube para executar a sua aplicação e para o cluster quando a implementação para. Se já estiver a ser executado um cluster do minikube, o Cloud Code reutiliza o cluster do minikube existente para a implementação.

Pode optar por usar este cluster do minikube gerido pelo Cloud Code no passo seguinte, desenvolvendo a sua aplicação, ao defini-lo como a sua preferência de implementação.

Cluster baseado na plataforma de nuvem

Se já tiver um cluster configurado para funcionar com ferramentas do Kubernetes, como o kubectl, que pode usar para este início rápido, o Cloud Code é implementado automaticamente no mesmo. Pode avançar para o desenvolvimento da sua aplicação, onde pode confirmar que o cluster preferencial está definido como o seu contexto atual.

Caso contrário, pode criar um seguindo as instruções específicas da sua plataforma de nuvem. Para o GKE, siga o guia Criar um cluster.

Desenvolva a sua aplicação

Para iniciar o desenvolvimento da sua aplicação no Kubernetes:

  1. Se estiver a executar num cluster alojado numa plataforma na nuvem, certifique-se de que definiu onde as imagens de contentores estão armazenadas para desenvolver no Kubernetes.

    Se tiver sessão iniciada Google Cloud no seu IDE e tiver um projeto predefinido definido, o Cloud Code usa automaticamente o seu repositório de imagens de contentores predefinido (gcr.io/{project_id} onde {project_id} faz referência ao seu projeto predefinido).

  2. Certifique-se de que o contexto do Kubernetes preferido está definido. Pode especificar esta opção na configuração do Develop on Kubernetes (acessível através de Executar > Editar configurações > Develop on Kubernetes), no separador Executar e na secção Preferências de implementação.

    Pode optar por implementar num contexto atual (predefinição), localmente num cluster do minikube ou noutro contexto disponível.

    Por predefinição, a sua aplicação Kubernetes é executada no modo a pedido com a opção A pedido selecionada. Se preferir, pode selecionar a opção Ao guardar o ficheiro.

  3. Escolha o destino de execução Develop on Kubernetes no seletor de configuração de execução/depuração na barra de navegação.

    Configurações de execução de implementação do Kubernetes

    Isto garante que todas as alterações ao código são criadas, enviadas e implementadas automaticamente numa nova versão da sua aplicação.

  4. Para iniciar o ciclo de desenvolvimento no seu cluster do Kubernetes, clique na ação de execução para Desenvolver no Kubernetes.

  5. Na janela de saída, no separador Registos, veja os registos de aplicações recebidos.

    Depois de a implementação ser iniciada, é apresentada a lista de portas encaminhadas para a aplicação implementada.

  6. Quando a implementação for bem-sucedida, recebe uma notificação a indicar que estão disponíveis novos URLs de serviço. Clique no separador URLs de serviço para ver os URLs e, de seguida, clique no link do URL para abrir o navegador com a aplicação em execução.

    Ver serviços com encaminhamento de portas no separador URLs de serviço

    Em alternativa, pode abrir o Registo de eventos e, de seguida, clicar no link para abrir o navegador com a aplicação em execução.

    O painel Recursos implementados mostra o que implementou durante a sessão de desenvolvimento.

Depure a sua aplicação

O Cloud Code suporta a aplicação de alterações durante a depuração.

Para depurar a sua aplicação:

  1. Clique na ação de depuração Ícone de ação de depuração para Desenvolver no Kubernetes para iniciar o ciclo de desenvolvimento no modo de depuração no seu cluster do Kubernetes.

    Iniciar o ciclo de desenvolvimento do cluster Kubernetes no modo de depuração

  2. O Cloud Code anexa uma sessão de depuração. Quando tiver êxito, a janela da ferramenta de depuração é aberta, confirmando a ligação (no separador Consola).

    Agora, pode depurar o cluster do Kubernetes em direto.

  3. Clique na margem na linha executável do código onde quer adicionar um ponto de interrupção.

    Os círculos preenchidos a vermelho indicam pontos de interrupção ativos, enquanto os círculos vazios com contorno vermelho indicam pontos de interrupção desativados.

  4. Quando envia um novo pedido à sua aplicação, esta é pausada na linha desejada.

    Sessão do depurador do Kubernetes

  5. Para terminar a sessão de depuração, clique no ícone de paragem na Develop on Kubernetes configuração de execução.

Ver registos

Além de ver uma stream em direto dos registos dos pods em execução no resultado do terminal enquanto desenvolve e executa a sua aplicação, pode ver registos de um pod específico navegando para o Kubernetes Explorer.

Para ver registos de um pod específico, siga estes passos:

  1. Navegue para o Explorador do Kubernetes. Pode aceder ao mesmo a partir do painel lateral à direita ou através de Ferramentas > Código na nuvem > Kubernetes > Ver explorador de clusters.

    Painel do Kubernetes Explorer aberto através do separador na barra de tarefas do lado direito

  2. Selecione o pod cujos registos quer ver.

  3. Clique com o botão direito do rato no pod e, de seguida, selecione Registar streams. Em alternativa, pode transmitir registos para contentores individuais em execução em pods.

    Isto envia registos para a consola do explorador do Kubernetes.

    Transmitir registos de um pod através do respetivo menu de contexto para gerar registos na consola do Kubernetes Explorer

Limpar

Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

  1. Aceda à página Projetos na Google Cloud consola:

    Aceda à página Projetos

  2. Selecione o projeto que criou para este início rápido e clique no ícone do caixote do lixo junto para o eliminar.

    Esta ação encerra o projeto e agenda a sua eliminação.

O que se segue?