Jenkins Tutorial | Integração contínua usando Jenkins | Edureka



Jenkins Tutorial é o segundo blog da série de blogs do Jenkins. Este blog fala sobre a arquitetura distribuída do Jenkins e como criar uma construção usando o Jenkins.

Jenkins Tutorial

Jenkins é uma das ferramentas mais importantes em . Espero que você tenha lido meu blog anterior em . Neste blog do tutorial do Jenkins, vou me concentrar na arquitetura do Jenkins e no pipeline de construção do Jenkins, além de mostrar como criar uma construção no Jenkins.

Antes de prosseguirmos com o Tutorial do Jenkins, as principais lições do blog anterior são:





  • Jenkins é usado para integrar todos os estágios DevOps com a ajuda de plug-ins.
  • Os plug-ins Jenkins comumente usados ​​são Git, Amazon EC2, projeto Maven 2, editor de HTML etc.
  • Jenkins tem mais de 1000 plug-ins e147.000 instalações ativas junto com mais de 1 milhão de usuários em todo o mundo.
  • Com a Integração Contínua toda mudança feita no código fonteéconstruído. Ele também executa outras funções,isso depende da ferramenta usada para integração contínua.
  • A Nokia mudou da construção noturna para a integração contínua.
  • O processo antes da integração contínua tinha muitas falhas. Como resultado, não apenas a entrega do software era lenta, mas a qualidade do software também não estava à altura. Os desenvolvedores também tiveram dificuldade em localizar e corrigir bugs.
  • A integração contínua com o Jenkins superou essas deficiências, acionando continuamente uma construção e teste para cada alteração feita no código-fonte.

Agora é a hora certa para entender a arquitetura do Jenkins.

Arquitetura Jenkins

Vamos revisar a arquitetura autônoma do Jenkins que expliquei a você no , o diagrama abaixo descreve o mesmo.



como encerrar um programa java

Arquitetura autônoma de Jenkins - O que é Jenkins - Edureka

Este único servidor Jenkins não era suficiente para atender a certos requisitos como:

  • Às vezes, você pode precisar de vários ambientes diferentes para testar suas compilações. Isso não pode ser feito por um único servidor Jenkins.
  • Se projetos maiores e mais pesados ​​forem desenvolvidos regularmente, um único servidor Jenkins não poderá simplesmente lidar com toda a carga.

Para atender às necessidades declaradas acima, a arquitetura distribuída Jenkins foi introduzida.



Arquitetura Distribuída Jenkins

Jenkins usa uma arquitetura Master-Slave para gerenciar compilações distribuídas. Nesta arquitetura, Mestre e Escravo se comunicam por meio do protocolo TCP / IP.

Mestre Jenkins

Seu servidor Jenkins principal é o Master. O trabalho do Mestre é lidar com:

  • Agendamento de trabalhos de construção.
  • Despachando compilações para os escravos para a execução real.
  • Monitore os escravos (possivelmente colocando-os online e offline, conforme necessário).
  • Registrando e apresentando os resultados da construção.
  • Uma instância Master do Jenkins também pode executar jobs de build diretamente.

Jenkins Slave

Um Slave é um executável Java que roda em uma máquina remota. A seguir estão as características dos escravos Jenkins:

  • Ele ouve solicitações da instância do Jenkins Master.
  • Os escravos podem ser executados em vários sistemas operacionais.
  • O trabalho de um Slave é fazer o que ele manda, o que envolve a execução de tarefas de construção despachadas pelo Mestre.
  • Você pode configurar um projeto para sempre rodar em uma máquina Slave específica, ou um tipo específico de máquina Slave, ou simplesmente deixar o Jenkins escolher o próximo Slave disponível.

O diagrama abaixo é autoexplicativo. Consiste em um Jenkins Master que gerencia três Jenkins Slave.

Agora vamos dar uma olhada em um exemplo em que Jenkins é usado para teste em diferentes ambientes como: Ubuntu, MAC, Windows etc.

O diagrama abaixo representa o mesmo:

As seguintes funções são realizadas na imagem acima:

  • Jenkins verifica o repositório Git em intervalos periódicos para quaisquer mudanças feitas no código-fonte.
  • Cada build requer um ambiente de teste diferente, o que não é possível para um único servidor Jenkins. Para realizar testes em diferentes ambientes, o Jenkins usa vários Slaves, conforme mostrado no diagrama.
  • O Jenkins Master solicita que esses escravos realizem testes e gerem relatórios de teste.

Jenkins Build Pipeline

É usado para saber qual tarefa o Jenkins está executando atualmente. Freqüentemente, várias mudanças diferentes são feitas por vários desenvolvedores ao mesmo tempo, então é útil saber qual mudança está sendo testada ou qual mudança está parada na fila ou qual compilação está quebrada. É aqui que o pipeline entra em cena. O Jenkins Pipeline oferece uma visão geral de onde os testes estão indo. No pipeline de construção, a construção como um todo é dividida em seções, como o teste de unidade, teste de aceitação, embalagem, relatórios e fases de implantação. As fases do pipeline podem ser executadas em série ou em paralelo e, se uma fase for bem-sucedida, ela passa automaticamente para a próxima fase (daí a relevância do nome “pipeline”). A imagem abaixo mostra a aparência de um pipeline de construção múltipla.

Espero que você tenha entendido os conceitos teóricos. Agora, vamos nos divertir com a prática.

Vou criar um novo emprego no Jenkins, é um Projeto Freestyle . No entanto, existem mais 3 opções disponíveis. Vejamos os tipos de empregos de construção disponíveis no Jenkins.

Projeto Freestyle:

Os trabalhos de construção Freestyle são trabalhos de construção de uso geral, que fornecem o máximo de flexibilidade.O trabalho de construção de estilo livre é a opção mais flexível e configurável e pode ser usado para qualquer tipo de projeto. É relativamente simples de configurar e muitas das opções que configuramos aqui também aparecem em outros trabalhos de construção.

Trabalho de multiconfiguração:

O “projeto de multiconfiguração” (também conhecido como “projeto de matriz”) permite que você execute o mesmo trabalho de construção em ambientes diferentes. Ele é usado para testar um aplicativo em ambientes diferentes, com bancos de dados diferentes ou mesmo em máquinas de construção diferentes.

Monitore um trabalho externo:

O trabalho de construção “Monitorar um trabalho externo” permite que você fique de olho em processos não interativos, como trabalhos cron.

Projeto Maven:

O “projeto maven2 / 3” é um build job especialmente adaptado para projetos Maven. Jenkins entende arquivos e estruturas de projeto Maven pom e pode usar as informações coletadas do arquivo pom para reduzir o trabalho que você precisa fazer para configurar seu projeto.

Aqui está um vídeo sobre o tutorial do Jenkins para uma melhor compreensão do Jenkins. Confira este vídeo tutorial do Jenkins.

Introdução ao Jenkins | Tutorial do Jenkins e do DevOps | Jenkins para iniciantes | Edureka

Criando uma construção usando Jenkins

Passo 1: Na página inicial da interface do Jenkins, selecione Novo item.

Passo 2: Digite um nome e selecione Projeto Freestyle .

Etapa 3: A próxima página é onde você especifica a configuração do trabalho. Como você observará rapidamente, há várias configurações disponíveis quando você cria um novo projeto.Nesta página de configuração, você também tem a opção de Adicionar etapa de construção para realizar ações extras, como a execução de scripts. Vou executar um script de shell.

Isso fornecerá uma caixa de texto na qual você pode adicionar quaisquer comandos de que precisar. Você pode usar scripts para executar várias tarefas como manutenção de servidor, controle de versão, leitura de configurações do sistema, etc. Usarei esta seção para executar um script simples.

Passo 4: Salve o projeto e você será levado a uma página de visão geral do projeto. Aqui você pode ver informações sobre o projeto, incluindo seu histórico de construção.

Etapa 5: Clique Construa agora no lado esquerdo para iniciar a construção.

Etapa 6: Para ver mais informações, clique nessa construção na área de histórico de construção, em que você será levado a uma página com uma visão geral das informações de construção.

Etapa 7: o Saída do console O link nesta página é especialmente útil para examinar os resultados do trabalho em detalhes.

Etapa 8: Se você voltar para a casa do Jenkins, verá uma visão geral de todos os projetos e suas informações, incluindo o status.

O status da construção é indicado de duas maneiras, por um ícone de clima e por uma bola colorida. O ícone de clima é particularmente útil, pois mostra um registro de várias construções em uma imagem.

Como você pode ver na imagem acima, o sol representa que todas as minhas construções foram bem-sucedidas. A cor da bola nos dá o status daquela construção em particular, na imagem acima a cor da bola é azul, o que significa que esta construção em particular foi bem-sucedida.

Neste tutorial do Jenkins, acabei de dar um exemplo introdutório. Em meu próximo blog, mostrarei como extrair e construir código do repositório GitHub usando Jenkins.

Se você encontrou isso Jenkins Tutorial relevante, verifique o pela Edureka, uma empresa de aprendizagem online confiável com uma rede de mais de 250.000 alunos satisfeitos espalhados por todo o mundo. O curso Edureka DevOps Certification Training ajuda os alunos a ganhar experiência em vários processos e ferramentas DevOps, como Puppet, Jenkins, Nagios e GIT para automatizar várias etapas em SDLC.

Tem alguma questão para nós? Mencione isso na seção de comentários e entraremos em contato com você.