Tutorial de Jenkins | Integración continua con Jenkins | Edureka



Jenkins Tutorial es el segundo blog de la serie de blogs de Jenkins. Este blog habla sobre la arquitectura distribuida de Jenkins y cómo crear una compilación con Jenkins.

Tutorial de Jenkins

Jenkins es una de las herramientas más importantes en . Espero que hayas leído mi blog anterior en . En este blog Tutorial de Jenkins, me centraré en la arquitectura de Jenkins y la canalización de compilación de Jenkins, además de mostrarle cómo crear una compilación en Jenkins.

Antes de continuar con el Tutorial de Jenkins, las conclusiones clave del blog anterior son:





  • Jenkins se utiliza para integrar todas las etapas de DevOps con la ayuda de complementos.
  • Los complementos de Jenkins más utilizados son Git, Amazon EC2, proyecto Maven 2, editor HTML, etc.
  • Jenkins tiene más de 1000 complementos y147.000 instalaciones activas junto con más de 1 millón de usuarios en todo el mundo.
  • Con la integración continua cada cambio realizado en el código fuenteesconstruido. También realiza otras funciones,eso depende de la herramienta utilizada para la Integración Continua.
  • Nokia pasó de la construcción nocturna a la integración continua.
  • El proceso anterior a la integración continua tenía muchas fallas. Como resultado, no solo la entrega del software fue lenta, sino que la calidad del software tampoco estuvo a la altura. Los desarrolladores también tuvieron dificultades para localizar y corregir errores.
  • La integración continua con Jenkins superó estas deficiencias activando continuamente una compilación y prueba para cada cambio realizado en el código fuente.

Ahora es el momento adecuado para comprender la arquitectura de Jenkins.

Arquitectura Jenkins

Revisemos la arquitectura Jenkins independiente que le he explicado en el , el siguiente diagrama muestra lo mismo.



Jenkins Standalone Architecture - ¿Qué es Jenkins? - Edureka

Este único servidor de Jenkins no fue suficiente para cumplir con ciertos requisitos como:

  • A veces, es posible que necesite varios entornos diferentes para probar sus compilaciones. Esto no lo puede hacer un solo servidor Jenkins.
  • Si se crean proyectos más grandes y pesados ​​de forma regular, un solo servidor Jenkins no puede simplemente manejar toda la carga.

Para abordar las necesidades mencionadas anteriormente, se introdujo la arquitectura distribuida de Jenkins.



Arquitectura distribuida de Jenkins

Jenkins usa una arquitectura maestro-esclavo para administrar compilaciones distribuidas. En esta arquitectura, el maestro y el esclavo se comunican a través del protocolo TCP / IP.

Maestro de Jenkins

Su servidor principal de Jenkins es el Master. El trabajo del Maestro es manejar:

  • Programación de trabajos de construcción.
  • Envío de compilaciones a los esclavos para la ejecución real.
  • Supervise a los esclavos (posiblemente conectándolos y desconectados según sea necesario).
  • Registrar y presentar los resultados de la construcción.
  • Una instancia maestra de Jenkins también puede ejecutar trabajos de compilación directamente.

Jenkins esclavo

Un esclavo es un ejecutable de Java que se ejecuta en una máquina remota. Las siguientes son las características de los esclavos Jenkins:

  • Escucha las solicitudes de la instancia principal de Jenkins.
  • Los esclavos pueden ejecutarse en una variedad de sistemas operativos.
  • El trabajo de un esclavo es hacer lo que se le ordena, lo que implica ejecutar trabajos de compilación enviados por el maestro.
  • Puede configurar un proyecto para que siempre se ejecute en una máquina esclava en particular, o un tipo particular de máquina esclava, o simplemente dejar que Jenkins elija el siguiente esclavo disponible.

El siguiente diagrama se explica por sí mismo. Consiste en un Jenkins Master que gestiona tres Jenkins Slave.

Ahora veamos un ejemplo en el que Jenkins se usa para probar en diferentes entornos como: Ubuntu, MAC, Windows, etc.

El siguiente diagrama representa lo mismo:

Las siguientes funciones se realizan en la imagen de arriba:

  • Jenkins comprueba el repositorio de Git a intervalos periódicos para detectar cualquier cambio realizado en el código fuente.
  • Cada compilación requiere un entorno de prueba diferente que no es posible para un solo servidor Jenkins. Para realizar pruebas en diferentes entornos, Jenkins usa varios esclavos como se muestra en el diagrama.
  • Jenkins Master solicita a estos esclavos que realicen pruebas y generen informes de prueba.

Jenkins Build Pipeline

Se utiliza para saber qué tarea está ejecutando Jenkins actualmente. A menudo, varios desarrolladores realizan varios cambios diferentes a la vez, por lo que es útil saber qué cambio se está probando o qué cambio está en la cola o qué compilación está rota. Aquí es donde la tubería entra en escena. Jenkins Pipeline le brinda una descripción general de dónde están las pruebas. En la canalización de compilación, la compilación en su conjunto se divide en secciones, como la prueba unitaria, la prueba de aceptación, el empaquetado, los informes y las fases de implementación. Las fases de la canalización se pueden ejecutar en serie o en paralelo, y si una fase tiene éxito, pasa automáticamente a la siguiente (de ahí la relevancia del nombre 'canalización'). La siguiente imagen muestra cómo se ve una canalización de compilación múltiple.

Espero que hayas entendido los conceptos teóricos. Ahora, divirtámonos con la práctica.

Crearé un nuevo trabajo en Jenkins, es un Proyecto Freestyle . Sin embargo, hay 3 opciones más disponibles. Veamos los tipos de trabajos de construcción disponibles en Jenkins.

Proyecto Freestyle:

Los trabajos de construcción de estilo libre son trabajos de construcción de uso general, que proporcionan la máxima flexibilidad.El trabajo de construcción de estilo libre es la opción más flexible y configurable, y se puede utilizar para cualquier tipo de proyecto. Es relativamente sencillo de configurar y muchas de las opciones que configuramos aquí también aparecen en otros trabajos de compilación.

Trabajo de multiconfiguración:

El “proyecto de configuración múltiple” (también denominado “proyecto de matriz”) le permite ejecutar el mismo trabajo de compilación en diferentes entornos. Se utiliza para probar una aplicación en diferentes entornos, con diferentes bases de datos o incluso en diferentes máquinas de compilación.

Supervisar un trabajo externo:

El trabajo de compilación 'Supervisar un trabajo externo' le permite vigilar los procesos no interactivos, como los trabajos cron.

Proyecto Maven:

El 'proyecto maven2 / 3' es un trabajo de construcción especialmente adaptado a los proyectos Maven. Jenkins comprende los archivos pom y las estructuras de proyectos de Maven, y puede usar la información obtenida del archivo pom para reducir el trabajo que necesita hacer para configurar su proyecto.

Aquí hay un video sobre el tutorial de Jenkins para comprender mejor a Jenkins. Mira este video tutorial de Jenkins.

Introducción a Jenkins | Tutorial de Jenkins y DevOps | Jenkins para principiantes | Edureka

Creando una construcción usando Jenkins

Paso 1: Desde la página de inicio de la interfaz de Jenkins, seleccione Nuevo artículo.

Paso 2: Ingrese un nombre y seleccione Proyecto Freestyle .

Paso 3: La siguiente página es donde especifica la configuración del trabajo. Como observará rápidamente, hay una serie de configuraciones disponibles cuando crea un nuevo proyecto.En esta página de configuración, también tiene la opción de Agregar paso de compilación para realizar acciones adicionales como ejecutar scripts. Ejecutaré un script de shell.

Esto le proporcionará un cuadro de texto en el que puede agregar los comandos que necesite. Puede usar scripts para ejecutar varias tareas como mantenimiento del servidor, control de versiones, lectura de la configuración del sistema, etc. Usaré esta sección para ejecutar un script simple.

Etapa 4: Guarde el proyecto y accederá a una página de descripción general del proyecto. Aquí puede ver información sobre el proyecto, incluido su historial de construcción.

Paso 5: Hacer clic Construye ahora en el lado izquierdo para comenzar la construcción.

Paso 6: Para ver más información, haga clic en esa compilación en el área del historial de compilación, después de lo cual se lo llevará a una página con una descripción general de la información de compilación.

Paso 7: los Salida de consola El enlace de esta página es especialmente útil para examinar los resultados del trabajo en detalle.

Paso 8: Si regresa a la casa de Jenkins, verá una descripción general de todos los proyectos y su información, incluido el estado.

longitud de una matriz javascript

El estado de la construcción se indica de dos formas, mediante un icono meteorológico y mediante una bola de color. El ícono del clima es particularmente útil ya que le muestra un registro de múltiples compilaciones en una imagen.

Como puede ver en la imagen de arriba, el sol representa que todas mis construcciones fueron exitosas. El color de la pelota nos da el estado de esa construcción en particular, en la imagen de arriba el color de la pelota es azul, lo que significa que esta construcción en particular fue exitosa.

En este tutorial de Jenkins, acabo de dar un ejemplo introductorio. En mi próximo blog, te mostraré cómo extraer y compilar código desde el repositorio de GitHub usando Jenkins.

Si encontraste esto Tutorial de Jenkins relevante, mira el por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de formación de certificación de Edureka DevOps ayuda a los alumnos a adquirir experiencia en varios procesos y herramientas de DevOps como Puppet, Jenkins, Nagios y GIT para automatizar varios pasos en SDLC.

Tienes una pregunta para nosotros? Menciónalo en la sección de comentarios y nos comunicaremos contigo.