Tutorial de Jenkins | Integració contínua mitjançant Jenkins | Edureka



Jenkins Tutorial és el segon bloc de la sèrie de blocs Jenkins. En aquest bloc es parla de l'arquitectura distribuïda de Jenkins i de com crear una compilació amb Jenkins.

Tutorial de Jenkins

Jenkins és una de les eines més importants de . Espero que hagueu llegit el meu bloc anterior . En aquest bloc de tutorial de Jenkins, em centraré en l'arquitectura de Jenkins i la construcció de canonades de Jenkins, juntament amb això, us mostraré com crear una construcció a Jenkins.

Abans de continuar amb el Tutorial de Jenkins, els punts clau per emportar del bloc anterior són:





  • Jenkins s'utilitza per integrar totes les etapes de DevOps amb l'ajuda de connectors.
  • Els connectors de Jenkins que s’utilitzen habitualment són Git, Amazon EC2, projecte Maven 2, editor HTML, etc.
  • Jenkins té més de 1000 connectors i147.000 instal·lacions actives juntament amb més d’un milió d’usuaris a tot el món.
  • Amb la integració contínua, cada canvi realitzat al codi fontésconstruït. També realitza altres funcions,això depèn de l'eina utilitzada per a la integració contínua.
  • Nokia va passar de la versió nocturna a la integració contínua.
  • El procés abans de la integració contínua tenia molts defectes. Com a resultat, no només l’entrega de programari va ser lenta, sinó que la qualitat del programari tampoc no estava a l’alçada. Els desenvolupadors també van tenir dificultats per localitzar i corregir errors.
  • La integració contínua amb Jenkins va superar aquestes mancances activant contínuament una compilació i comprovant cada canvi realitzat al codi font.

Ara és el moment correcte per entendre l'arquitectura de Jenkins.

Jenkins Architecture

Revisem l’arquitectura independent de Jenkins que us he explicat a , a continuació, el diagrama representa el mateix.



Jenkins Standalone Architecture - Què és Jenkins - Edureka

Aquest únic servidor Jenkins no era suficient per satisfer certs requisits com:

  • De vegades és possible que necessiteu diversos entorns diferents per provar les vostres versions. Això no ho pot fer un sol servidor Jenkins.
  • Si es construeixen projectes més grans i pesats de forma regular, un sol servidor Jenkins no pot gestionar tota la càrrega.

Per atendre les necessitats exposades anteriorment, es va introduir l'arquitectura distribuïda de Jenkins.



Jenkins Distributed Architecture

Jenkins utilitza una arquitectura Master-Slave per gestionar les compilacions distribuïdes. En aquesta arquitectura, Master i Slave es comuniquen a través del protocol TCP / IP.

Jenkins Master

El vostre servidor principal de Jenkins és el mestre. La feina del Màster és gestionar:

  • Programació de llocs de treball de construcció.
  • Enviament de versions als esclaus per a l'execució real.
  • Superviseu els esclaus (possiblement portant-los en línia i fora de línia segons sigui necessari).
  • Gravació i presentació dels resultats de la compilació.
  • Una instància mestra de Jenkins també pot executar treballs de compilació directament.

Esclau de Jenkins

Un esclau és un executable de Java que s'executa en una màquina remota. A continuació es detallen les característiques de Jenkins Slaves:

passar per valor a java
  • Escolta les peticions de la instància de Jenkins Master.
  • Els esclaus poden funcionar amb diversos sistemes operatius.
  • La feina d’un esclau és fer el que se’ls demana, que consisteix en executar feines de construcció enviades pel mestre.
  • Podeu configurar un projecte perquè s'executi sempre en una màquina Slave concreta o en un tipus particular de màquina Slave, o simplement deixeu que Jenkins triï el següent esclau disponible.

El diagrama següent s’explica per si mateix. Consisteix en un Jenkins Master que gestiona tres Jenkins Slave.

Vegem ara un exemple en què Jenkins s’utilitza per provar en diferents entorns com: Ubuntu, MAC, Windows, etc.

El diagrama següent representa el mateix:

A la imatge anterior es realitzen les funcions següents:

  • Jenkins comprova el dipòsit de Git a intervals periòdics de si hi ha canvis en el codi font.
  • Cada compilació requereix un entorn de prova diferent que no és possible per a un sol servidor Jenkins. Per tal de realitzar proves en diferents entorns, Jenkins utilitza diversos esclaus com es mostra al diagrama.
  • Jenkins Master demana a aquests esclaus que realitzin proves i generin informes de proves.

Jenkins Build Pipeline

S'utilitza per saber quina tasca està executant Jenkins actualment. Sovint diversos desenvolupadors realitzen diversos canvis alhora, de manera que és útil saber quin canvi s’està provant o quin canvi es troba a la cua o quina versió es trenca. Aquí és on entra en escena la canonada. El oleoducte Jenkins us ofereix una visió general de fins on es realitzen les proves. A la canonada de construcció, la construcció en conjunt es desglossa en seccions, com ara la prova unitària, la prova d’acceptació, l’envasament, la presentació d’informes i les fases de desplegament. Les fases de la canonada es poden executar en sèrie o en paral·lel i, si una fase té èxit, passa automàticament a la fase següent (d’aquí la rellevància del nom “pipeline”). La imatge següent mostra l’aspecte d’un pipeline de compilació múltiple.

com compilar un programa Java

Espero que hagueu entès els conceptes teòrics. Ara, divertim-nos amb les mans pràctiques.

Crearé un nou lloc de treball a Jenkins, és un Freestyle Project . Tot i això, hi ha 3 opcions més disponibles. Vegem els tipus de treballs de construcció disponibles a Jenkins.

Projecte Freestyle:

Els treballs de construcció lliure són treballs de construcció d’ús general, que proporcionen la màxima flexibilitat.El treball de construcció d’estil lliure és l’opció més flexible i configurable i es pot utilitzar per a qualsevol tipus de projecte. És relativament senzill de configurar i moltes de les opcions que configurem aquí també apareixen en altres treballs de compilació.

Feina de multiconfiguració:

El 'projecte de configuració múltiple' (també anomenat 'projecte matricial') us permet executar el mateix treball de construcció en entorns diferents. S'utilitza per provar una aplicació en entorns diferents, amb bases de dades diferents, o fins i tot en diferents màquines de construcció.

Superviseu un treball extern:

El treball de compilació 'Supervisar un treball extern' us permet controlar els processos no interactius, com ara els treballs cron.

Projecte Maven:

El 'projecte maven2 / 3' és un treball de construcció especialment adaptat als projectes Maven. Jenkins entén els fitxers Maven pom i les estructures del projecte i pot utilitzar la informació obtinguda del fitxer pom per reduir la feina que heu de fer per configurar el vostre projecte.

Aquí teniu un vídeo sobre el tutorial de Jenkins per a una millor comprensió de Jenkins. Mireu aquest vídeo tutorial de Jenkins.

Introducció a Jenkins | Tutorial de Jenkins i DevOps | Jenkins per a principiants | Edureka

Creació d'una compilació amb Jenkins

Pas 1: Des de la pàgina d'inici de la interfície Jenkins, seleccioneu Article nou.

Pas 2: Introduïu un nom i seleccioneu Projecte d’estil lliure .

Pas 3: Aquesta pàgina següent és on especifiqueu la configuració del treball. Com observareu ràpidament, hi ha diversos paràmetres disponibles quan creeu un projecte nou.En aquesta pàgina de configuració, també teniu l'opció de fer-ho Afegeix el pas de construcció per realitzar accions addicionals, com ara executar scripts. Executaré un script de shell.

Això us proporcionarà un quadre de text en el qual podeu afegir qualsevol ordre que necessiteu. Podeu utilitzar scripts per executar diverses tasques com ara manteniment del servidor, control de versions, lectura de la configuració del sistema, etc. Utilitzaré aquesta secció per executar un script simple.

tutorial de disseny d'interfície d'usuari d'Android Studio

Pas 4: Deseu el projecte i us dirigirà a una pàgina de visió general del projecte. Aquí podeu veure informació sobre el projecte, inclòs el seu historial construït.

Pas 5: Feu clic a Construeix ara a la part esquerra per iniciar la construcció.

Pas 6: Per veure més informació, feu clic a la compilació que hi ha a l’àrea de l’historial de compilacions, per la qual cosa us dirigirà a una pàgina amb una visió general de la informació de la compilació.

Pas 7: El Sortida de la consola L'enllaç d'aquesta pàgina és especialment útil per examinar detalladament els resultats de la feina.

Pas 8: Si torneu a casa Jenkins, veureu una visió general de tots els projectes i la seva informació, inclòs l’estat.

L’estat de la construcció s’indica de dues maneres, mitjançant una icona del temps i una bola de colors. La icona del temps és particularment útil, ja que mostra un registre de diverses versions en una imatge.

Com podeu veure a la imatge anterior, el sol representa que totes les meves construccions van tenir èxit. El color de la bola ens proporciona l’estat d’aquesta construcció en concret, a la imatge anterior el color de la bola és blau, cosa que significa que aquesta construcció en concret ha tingut èxit.

En aquest tutorial de Jenkins, acabo de donar un exemple introductori. Al meu proper bloc, us mostraré com extreure i crear codi des del dipòsit de GitHub mitjançant Jenkins.

Si ho trobeu Tutorial de Jenkins rellevant, consulteu el per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. El curs Edureka DevOps Certification Training ajuda els estudiants a adquirir experiència en diversos processos i eines DevOps com Puppet, Jenkins, Nagios i GIT per automatitzar diversos passos en SDLC.

Tens alguna pregunta? Esmenta’l a la secció de comentaris i et respondrem.