Checkpoints
Create a Kubernetes cluster
/ 30
Configure and Install Jenkins
/ 20
Create the production and canary deployments
/ 30
Create a repository
/ 20
Entrega contínua com o Jenkins no Kubernetes Engine
- GSP051
- Visão geral
- Configuração e requisitos
- Tarefa 1: faça o download do código-fonte
- Tarefa 2: faça o provisionamento do Jenkins
- Tarefa 3: configure o Helm
- Tarefa 4: configure e instale o Jenkins
- Tarefa 5: conecte-se ao Jenkins
- Tarefa 6: entenda o aplicativo
- Tarefa 7: implante o aplicativo
- Tarefa 8: crie um pipeline do Jenkins
- Tarefa 9: crie o ambiente de desenvolvimento
- Tarefa 10: inicie a implantação
- Tarefa 11: implante uma versão canário
- Tarefa 12: implante a versão na produção
- Tarefa 13: teste seu conhecimento
- Parabéns!
GSP051
Visão geral
Neste laboratório, você aprenderá a configurar um pipeline de entrega contínua usando o Jenkins
no Kubernetes Engine. O Jenkins é o servidor de automação usado por desenvolvedores que integram com frequência o próprio código em um repositório compartilhado. A solução que você criará neste laboratório será semelhante ao diagrama abaixo:
No Centro de arquitetura do Cloud, consulte Jenkins no Kubernetes Engine para saber mais sobre como usar o Jenkins no Kubernetes.
O que você aprenderá
Neste laboratório, você completará as seguintes tarefas para saber como usar o Jenkins no Kubernetes:
- Provisionar um aplicativo do Jenkins em um cluster do Kubernetes Engine
- Configurar seu aplicativo do Jenkins usando o Gerenciador de pacotes Helm
- Conhecer os recursos de um aplicativo do Jenkins
- Criar e testar um pipeline do Jenkins
Pré-requisitos
Este é um laboratório de nível avançado. Antes de começar, você precisa saber pelo menos os conceitos básicos de programação de shell, do Kubernetes e do Jenkins. Confira alguns laboratórios para você se preparar:
- Introdução ao Docker
- Nó do Hello Kubernetes
- Como gerenciar implantações com o Kubernetes Engine
- Como configurar o Jenkins no Kubernetes Engine
Quando estiver tudo pronto, role para baixo e saiba mais sobre o Kubernetes, o Jenkins e a entrega contínua.
O que é o Kubernetes Engine?
O Kubernetes Engine é a versão hospedada do Kubernetes
do Google Cloud, um gerenciador de cluster e sistema de orquestração avançado para contêineres. O Kubernetes é um projeto de código aberto que pode ser executado em diversos ambientes: desde laptops e clusters de alta disponibilidade com vários nós, até máquinas virtuais e bare metal. Como mencionado acima, os apps do Kubernetes são desenvolvidos em containers
. São aplicativos leves com todas as dependências e bibliotecas necessárias para executá-los. Essa estrutura subjacente torna os aplicativos Kubernetes altamente disponíveis, seguros e rápidos de implantar, o que é ideal para desenvolvedores de nuvem.
O que é o Jenkins?
O Jenkins é um servidor de automação de código aberto que permite orquestrar com flexibilidade pipelines de build, teste e implantação. Com o Jenkins, os desenvolvedores podem fazer iterações rápidas em projetos sem se preocupar com problemas de sobrecarga que podem ser gerados pela entrega contínua.
O que é a entrega/implantação contínua?
Quando é preciso configurar um pipeline de entrega contínua (CD), a implantação do Jenkins no Kubernetes Engine oferece benefícios importantes em comparação com uma implantação padrão baseada em VM.
Se você usar contêineres no processo de criação, um host virtual poderá executar jobs em vários sistemas operacionais. O Kubernetes Engine oferece ephemeral build executors
, que são usados somente quando os builds estão ativamente em execução, deixando recursos para outras tarefas do cluster, como jobs de processamento em lote. Outro benefício do uso de executores de build temporários é a velocidade, já que eles são iniciados em questão de segundos.
Além disso, o Kubernetes Engine vem com o balanceador de carga do Google, que pode ser usado para automatizar o roteamento de tráfego da Web para suas instâncias. O balanceador de carga processa a terminação SSL e usa um endereço IP global configurado com a rede de backbone do Google. Com a interface da Web, esse balanceador de carga sempre levará seus usuários a uma instância do aplicativo pelo caminho mais rápido possível.
Agora que você aprendeu um pouco sobre o Kubernetes, o Jenkins e como os dois interagem em um pipeline de CD, é hora de criar um.
Configuração e requisitos
Antes de clicar no botão Start Lab
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
- Acesso a um navegador de Internet padrão (recomendamos o Chrome).
- Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você vai encontrar o seguinte:
- O botão Abrir console do Google Cloud
- O tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
-
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta. -
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Nome de usuário"}}} Você também encontra o Nome de usuário no painel Detalhes do laboratório.
-
Clique em Seguinte.
-
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
{{{user_0.password | "Senha"}}} Você também encontra a Senha no painel Detalhes do laboratório.
-
Clique em Seguinte.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais. -
Acesse as próximas páginas:
- Aceite os Termos e Condições.
- Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
- Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
Ativar o Cloud Shell
O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.
- Clique em Ativar o Cloud Shell na parte de cima do console do Google Cloud.
Depois de se conectar, vai notar que sua conta já está autenticada, e que o projeto está configurado com seu PROJECT_ID. A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:
gcloud
é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.
- (Opcional) É possível listar o nome da conta ativa usando este comando:
-
Clique em Autorizar.
-
A saída será parecida com esta:
Saída:
- (Opcional) É possível listar o ID do projeto usando este comando:
Saída:
Exemplo de saída:
gcloud
, acesse o guia com informações gerais sobre a gcloud CLI no Google Cloud.
Tarefa 1: faça o download do código-fonte
- Para fazer a configuração, abra uma nova sessão no Cloud Shell e execute o comando abaixo para definir sua zona
:
- Em seguida, copie o exemplo de código do laboratório:
- Agora, mude para o diretório correto:
Tarefa 2: faça o provisionamento do Jenkins
Como criar um cluster do Kubernetes
- Agora, execute este comando para provisionar um cluster do Kubernetes:
Essa etapa pode levar vários minutos para ser concluída. Os escopos extras permitem que o Jenkins acesse o Cloud Source Repositories e o Google Container Registry.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se o cluster do Kubernetes tiver sido criado corretamente, você verá uma pontuação de avaliação.
- Antes de continuar, execute o seguinte comando para confirmar se o cluster está ativo:
- Consulte as credenciais do cluster:
- O Kubernetes Engine usa essas credenciais para acessar seu cluster recém-provisionado. Confirme se você consegue se conectar a ele executando o seguinte comando:
Tarefa 3: configure o Helm
Neste laboratório, você vai usar o Helm para instalar o Jenkins a partir do repositório Charts. O Helm é um gerenciador de pacotes que facilita a configuração e a implantação de aplicativos do Kubernetes. Depois de instalar o Jenkins, você poderá configurar seu pipeline de CI/CD.
- Adicione o repositório de gráfico estável do Helm:
- Use o comando a seguir para confirmar se o repositório está atualizado:
Tarefa 4: configure e instale o Jenkins
Ao instalar o Jenkins, é possível usar um arquivo values
como modelo para fornecer os valores necessários para a configuração.
Você vai usar o arquivo values
personalizado para configurar automaticamente o Kubernetes Cloud e adicionar estes plug-ins necessários:
- Kubernetes:latest
- Workflow-multibranch:latest
- Git:latest
- Configuration-as-code:latest
- Google-oauth-plugin:latest
- Google-source-plugin:latest
- Google-storage-plugin:latest
Dessa forma, o Jenkins se conecta ao cluster e ao projeto do GCP.
- Use a CLI do Helm para implantar o gráfico com suas configurações:
Talvez leve alguns minutos para que o comando seja concluído.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se o gráfico do Jenkins tiver sido configurado corretamente, você verá uma pontuação de avaliação.
- Depois de executar o comando, verifique se o estado do pod do Jenkins está definido como
Running
e o do contêiner como "READY":
Exemplo de saída:
- Configure a conta de serviço do Jenkins para fazer a implantação no cluster:
Você vai receber esta saída:
- Execute o seguinte comando para configurar o encaminhamento de portas para a interface do Jenkins usando o Cloud Shell:
- Agora verifique se o serviço do Jenkins foi criado corretamente:
Exemplo de saída:
Você está usando o Plug-in do Kubernetes para que os nós do builder sejam iniciados automaticamente, conforme necessário, quando o mestre do Jenkins os solicitar. Após a conclusão do processo, eles serão automaticamente desativados, e os recursos relacionados serão adicionados outra vez ao pool de recursos do cluster.
Esse serviço expõe as portas 8080
e 50000
dos pods que correspondem a selector
. Com isso, as portas da interface da Web do Jenkins e as portas de registro do agente/builder serão expostas no cluster do Kubernetes. Além disso, o serviço jenkins-ui
é exposto usando um ClusterIP para evitar que ele seja acessado de fora do cluster.
Tarefa 5: conecte-se ao Jenkins
- O gráfico do Jenkins vai criar automaticamente uma senha de administrador para você. Para ver essa senha, execute o seguinte:
- No Cloud Shell, clique no botão Visualização na Web e depois em Visualizar na porta 8080 para acessar a interface do usuário do Jenkins:
- Se for necessário, faça login com o nome de usuário
admin
e sua senha gerada automaticamente.
A configuração do Jenkins no seu cluster do Kubernetes está pronta. O Jenkins vai gerenciar seus pipelines automatizados de CI/CD nas próximas seções.
Tarefa 6: entenda o aplicativo
Você vai implantar o aplicativo de amostra gceme
no pipeline de implantação contínua. O aplicativo, escrito na linguagem Go, está no diretório sample-app do repositório. Quando você executa o binário gceme em uma instância do Compute Engine, o app mostra os metadados da instância em um card de informações.
O aplicativo simula um microsserviço aceitando dois modos de operação.
- No modo de back-end: o gceme detecta a atividade da porta 8080 e retorna metadados da instância do Compute Engine no formato JSON.
- No modo de front-end: o gceme consulta o serviço de back-end e renderiza o JSON resultante na interface do usuário.
Tarefa 7: implante o aplicativo
Você vai implantar o aplicativo em dois ambientes diferentes:
- Produção: é o site ativo que os usuários acessam.
- Canário: é um site de capacidade menor que só recebe uma porcentagem do tráfego do usuário. Use esse ambiente para validar seu software com o tráfego ativo antes de lançá-lo para todos os usuários.
- No Google Cloud Shell, navegue até o diretório de aplicativos de amostra:
- Crie o namespace do Kubernetes para isolar logicamente a implantação:
- Use os comandos
kubectl apply
para criar as implantações das versões de produção e canário, além dos serviços:
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se as implantações tiverem sido criadas corretamente, você verá uma pontuação de avaliação.
Por padrão, somente uma réplica do front-end é implantada. Use o comando kubectl scale
para garantir o mínimo de quatro réplicas em execução o tempo todo.
- Escalone verticalmente os front-ends do ambiente de produção executando o seguinte comando:
- Agora, confirme que você tem cinco pods em execução para o front-end, quatro para o tráfego de produção e um para as versões canário. As mudanças na versão canário vão afetar somente um a cada cinco usuários (20%):
- Além disso, confirme que você tem dois pods para o back-end, um para a produção e um para a versão canário:
- Consulte o IP externo dos serviços de produção:
Exemplo de saída:
Cole o IP externo no navegador para ver o card de informações. Você verá uma página semelhante a esta:
- Agora, armazene o IP do balanceador de carga do serviço de front-end em uma variável de ambiente para usar mais tarde:
-
Para confirmar que os dois serviços estão funcionando, abra o endereço IP externo do front-end no navegador.
-
Verifique a saída da versão do serviço (que deve ser 1.0.0) executando o seguinte comando:
Pronto. Você implantou o aplicativo de amostra. Agora, configure um pipeline para implantar as alterações de maneira contínua e confiável.
Tarefa 8: crie um pipeline do Jenkins
Como criar um repositório para hospedar o código-fonte do app de amostra
- Crie uma cópia do app de amostra
gceme
e a envie por push ao Cloud Source Repository:
Ignore o aviso. Esse repositório não vai ser cobrado.
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se o repositório de origem tiver sido criado corretamente, você verá uma pontuação de avaliação.
- Inicialize o diretório sample-app como o próprio repositório Git:
- Execute este comando:
- Defina o nome de usuário e o endereço de e-mail para as confirmações do Git. Substitua
[EMAIL_ADDRESS]
pelo endereço de e-mail do Git e[USERNAME]
pelo nome de usuário do Git:
- Adicione, confirme e envie os arquivos por push:
Como adicionar as credenciais da conta de serviço
Configure as credenciais para permitir que o Jenkins acesse o repositório do código. O Jenkins vai usar as credenciais da conta de serviço do seu cluster para fazer o download do código do Cloud Source Repositories.
-
Na interface do usuário do Jenkins, clique em Manage Jenkins à esquerda e depois em Security > Credentials.
-
Clique em System.
-
Clique em Global credentials (unrestricted) (Credenciais globais (ilimitadas)).
-
Clique em Add Credentials (Adicionar credenciais) no canto superior direito.
-
Selecione Google Service Account from metadata no menu suspenso Kind e clique em Create.
As credenciais globais foram adicionadas. O nome da credencial é o Project ID
que está na seção CONNECTION DETAILS
do laboratório.
Como configurar o Jenkins Cloud para o Kubernetes
- Na interface do usuário do Jenkins, selecione Manage Jenkins > Nodes.
- Clique em Clouds no painel de navegação à esquerda.
- Clique em New cloud.
- Digite qualquer nome em Cloud name e selecione Kubernetes como Type.
- Clique em Create.
- Selecione Kubernetes Cloud Details.
- No campo Jenkins URL, insira este valor:
http://cd-jenkins:8080
- No campo Jenkins tunnel, insira este valor:
cd-jenkins-agent:50000
- Clique em Save (Salvar).
Como criar o job do Jenkins
Navegue até a interface do usuário do Jenkins e siga estas etapas para configurar um job de pipeline.
-
Clique em Dashboard (Painel) > New Item (Novo item) no painel à esquerda.
-
Nomeie o projeto como sample-app, escolha a opção Multibranch Pipeline (Pipeline de multirramificaçõs) e clique em OK.
-
Na página seguinte, na seção Branch Sources (Origens da ramificação), selecione Git no menu suspenso Add Source (Adicionar origem).
-
Cole o URL do clone HTTPS do repositório sample-app no Cloud Source Repositories, no campo Project Repository (Repositório de projetos). Substitua
[PROJECT_ID]
pelo ID do projeto:
-
No menu suspenso Credentials (Credenciais), selecione a credencial que você criou ao adicionar sua conta de serviço nas etapas anteriores.
-
Na seção Scan Multibranch Pipeline Triggers, marque a caixa Periodically if not otherwise run e defina o valor de Interval como 1 minute.
-
A configuração do job será semelhante a esta:
- Clique em Save (Salvar) e mantenha o valor padrão das outras opções.
Depois que você concluir essas etapas, um job chamado Branch indexing
(Indexação de ramificação) será executado. Esse "meta-job" identifica as ramificações do repositório e garante que não ocorreram alterações nelas. Se você clicar em "sample-app" no canto superior esquerdo, o job master
vai aparecer.
O pipeline do Jenkins está pronto. Em seguida, você vai criar o ambiente de desenvolvimento para integração contínua.
Tarefa 9: crie o ambiente de desenvolvimento
Uma ramificação de desenvolvimento é um conjunto de ambientes que os desenvolvedores usam para testar as alterações no código antes de enviá-las para integração ao site ativo. Esses ambientes são versões reduzidas do aplicativo, mas precisam ser implantados com os mesmos mecanismos do ambiente ativo.
Crie uma ramificação de desenvolvimento
Para criar um ambiente de desenvolvimento em uma ramificação de recursos, você pode enviá-lo por push ao servidor Git e deixar o Jenkins implantar o ambiente.
- Crie uma ramificação de desenvolvimento e a envie por push ao servidor Git:
Como modificar a definição do pipeline
O Jenkinsfile
que define o pipeline é escrito com a sintaxe do Groovy para pipelines do Jenkins (página em inglês). Com um Jenkinsfile
, é possível expressar todo um pipeline de build em um único arquivo que coexiste com o código-fonte. Os pipelines oferecem suporte aos recursos eficientes, como o carregamento em paralelo, e exigem a aprovação manual do usuário.
Para que o pipeline funcione como esperado, é preciso modificar o Jenkinsfile
para definir o código do seu projeto.
- Abra o Jenkinsfile no seu editor de terminal, por exemplo,
vi
:
- Inicie o editor:
-
Adicione o
PROJECT_ID
ao valorREPLACE_WITH_YOUR_PROJECT_ID
. OPROJECT_ID
é o ID do seu projeto que fica na seçãoCONNECTION DETAILS
(Detalhes da conexão) do laboratório. Ele também pode ser localizado usandogcloud config get-value project
. -
Altere o valor da
CLUSTER_ZONE
para. É possível conseguir esse valor usando gcloud config get compute/zone
.
- Salve o arquivo
Jenkinsfile
, pressione a tecla Esc (para usuários dovi
) e use:
Modifique o site
Para demonstrar como alterar o aplicativo, mude a cor dos cards do gceme de azul para laranja.
- Abra o
html.go:
- Inicie o editor:
- Mude as duas instâncias de
<div class="card blue">
com o seguinte código:
- Salve o arquivo
html.go
, pressione a tecla Esc e use:
- Abra o
main.go
:
- Inicie o editor:
- A versão é definida nesta linha:
Atualize a versão para:
- Salve o arquivo main.go novamente, pressione a tecla Esc e use:
Tarefa 10: inicie a implantação
- Confirme e envie suas alterações por push:
Isso vai iniciar a criação do seu ambiente de desenvolvimento.
Depois de enviar a mudança por push ao repositório do Git, acesse a interface de usuário do Jenkins. Você verá que a criação da ramificação new-feature
foi iniciada. Pode levar até um minuto para que as alterações sejam detectadas.
- Depois que o build estiver em execução, clique na seta para baixo ao lado do build na navegação à esquerda e selecione Saída do console:
- Acompanhe a saída do build por alguns minutos e aguarde o início das mensagens
kubectl --namespace=new-feature apply...
. Agora, a ramificação "new-feature" vai ser implantada no seu cluster.
Se nada for exibido em Build Executor
(Executor de build), não se preocupe. Acesse a página inicial do Jenkins > app de amostra. Verifique se o pipeline new-feature
foi criado.
- Assim que tudo estiver pronto, inicie o proxy em segundo plano:
- Se o processo parar, pressione as teclas Ctrl + C para sair. Verifique se o aplicativo pode ser acessado enviando uma solicitação para
localhost
e permitindo que o proxykubectl
a encaminhe para seu serviço:
Você verá a resposta "2.0.0", que é a versão em uso no momento.
Se você receber um erro semelhante a este:
- Isso significa que o endpoint do front-end ainda não foi propagado. Aguarde um pouco e tente o comando
curl
novamente. Prossiga quando receber a seguinte saída:
Pronto. Você configurou o ambiente de desenvolvimento. Agora, você usará o que aprendeu no módulo anterior para implantar uma versão canário e testar um novo recurso.
Tarefa 11: implante uma versão canário
Você confirmou que seu app está executando o código mais recente no ambiente de desenvolvimento. Agora, implante esse código no ambiente canário.
- Crie uma ramificação canário e a envie por push para o servidor do Git:
- No Jenkins, você vai ver que o pipeline canário foi iniciado. Depois de concluído, verifique o URL de serviço para garantir que parte do tráfego seja atendida pela nova versão. O esperado é que uma em cada cinco solicitações, sem ordem específica, retorne a versão
2.0.0
.
- Se você continuar vendo a versão 1.0.0, execute os comandos acima novamente. Depois de confirmar que está tudo certo, encerre o comando com Ctrl + C.
Pronto! Você implantou uma versão canário. Agora, implante a nova versão na produção.
Tarefa 12: implante a versão na produção
Agora que a versão canário está pronta e não houve reclamações de clientes, implante-a no restante da sua frota de produção.
- Crie uma ramificação canário e a envie por push para o servidor do Git:
No Jenkins, você verá que o pipeline mestre foi iniciado.
- Depois de concluído, o que pode levar alguns minutos, verifique o URL de serviço para garantir que todo o tráfego está sendo atendido pela nova versão 2.0.0.
- Mais uma vez, se instâncias da versão
1.0.0
forem retornadas, execute os comandos acima novamente. Para interromper esse comando, pressione Ctrl + C.
Exemplo de saída:
Você também pode navegar para o site em que o aplicativo gceme mostra os cards de informações. A cor do card mudou de azul para laranja.
- Confira abaixo o comando que foi usado para consultar o endereço IP externo. Cole o IP externo em uma nova guia para que o card de informação apareça:
Exemplo de saída:
Tarefa 13: teste seu conhecimento
Responda às perguntas de múltipla escolha a seguir para reforçar sua compreensão dos conceitos abordados neste laboratório. Use todo o conhecimento adquirido até aqui.
Pronto.
Muito bem! Você implantou seu aplicativo na produção.
Parabéns!
Isso conclui este laboratório prático sobre implantação e uso do Jenkins no Kubernetes Engine para ativar o pipeline de entrega/implantação contínua. Você teve a oportunidade de implantar uma ferramenta DevOps importante no Kubernetes Engine e configurá-la para uso na produção. Você trabalhou com a ferramenta de linha de comando kubectl e as configurações de implantação em arquivos YAML, além de aprender um pouco sobre a configuração de pipelines do Jenkins para um processo de desenvolvimento/implantação. Com essa experiência prática, você deve se sentir mais à vontade para usar essas ferramentas no seu próprio trabalho de DevOps.
Termine a Quest
Este laboratório autoguiado faz parte das Quests Kubernetes no Google Cloud, Cloud Architecture e DevOps Essentials. Uma Quest é uma série de laboratórios relacionados que formam um programa de aprendizado. Ao concluir uma Quest, você ganha um selo como reconhecimento da sua conquista. É possível publicar os selos e incluir um link para eles no seu currículo on-line ou nas redes sociais. Inscreva-se em qualquer Quest que tenha este laboratório para receber os créditos de conclusão na mesma hora. Confira o catálogo do Google Cloud Ensina para ver todas as Quests disponíveis.
Comece o próximo laboratório
Continue sua Quest no Hello Node Kubernetes ou confira estes laboratórios do Google Cloud Ensina:
Próximas etapas/saiba mais
- Leia mais sobre a solução Jenkins no Kubernetes Engine.
- Saiba como usar o Jenkins para ativar a entrega contínua no Kubernetes Engine.
- Leia mais em Guias e soluções de DevOps na documentação do Google Cloud.
- Conheça a comunidade do Jenkins (em inglês).
Treinamento e certificação do Google Cloud
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 20 de setembro de 2023
Laboratório testado em 20 de setembro de 2023
Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.