menu
arrow_back

Entrega continua con Jenkins en Kubernetes Engine

—/100

Checkpoints

arrow_forward

Create a Kubernetes cluster (zone: us-east1-d)

Configure and Install Jenkins

Create the production and canary deployments

Create a repository

Entrega continua con Jenkins en Kubernetes Engine

1 hora 15 minutos 7 créditos

GSP051

Labs de autoaprendizaje de Google Cloud

Descripción general

En este lab, aprenderá cómo configurar una canalización de entrega continua con Jenkins en Kubernetes Engine. Jenkins es el servidor de automatización preferido de los desarrolladores que integran con frecuencia su código en un repositorio compartido. La solución que compilará en este lab será similar al siguiente diagrama:

overview.png

Puede encontrar más información sobre cómo ejecutar Jenkins en Kubernetes aquí.

Actividades

En este lab, realizará las siguientes tareas:

  • Aprovisionar una aplicación de Jenkins en un clúster de Kubernetes Engine
  • Configurar su aplicación de Jenkins con el administrador de paquetes Helm
  • Explorar las funciones de una aplicación de Jenkins
  • Crear y ejercitar una canalización de Jenkins

Requisitos previos

Este es un lab de nivel avanzado. Antes de hacerlo, debe sentirse cómodo con, al menos, los conceptos básicos de la programación en una shell, así como Kubernetes y Jenkins. Aquí hay algunos Qwiklabs para ponerse al día:

Cuando esté listo, desplácese hacia abajo para obtener más información sobre Kubernetes, Jenkins y la entrega continua.

¿Qué es Kubernetes Engine?

Kubernetes Engine es la versión alojada de Google Cloud de Kubernetes, un sistema de organización y administración de clústeres potente para contenedores. Kubernetes es un proyecto de código abierto que se puede ejecutar en muchos entornos distintos, desde laptops hasta clústeres de múltiples nodos de alta disponibilidad; desde máquinas virtuales hasta equipos físicos. Como se mencionó anteriormente, las aplicaciones de Kubernetes se compilan en contenedores. Estas aplicaciones son livianas y se empaquetan con todas las dependencias y bibliotecas necesarias para ejecutarlas. Esta estructura subyacente hace que las aplicaciones de Kubernetes tengan una alta disponibilidad y sean seguras y rápidas de implementar; un marco de trabajo ideal para los desarrolladores en la nube.

¿Qué es Jenkins?

Jenkins es un servidor de automatización de código abierto que le permite organizar de manera flexible sus canalizaciones de compilación, de prueba y de implementación. Jenkins permite a los desarrolladores iterar rápidamente en proyectos sin preocuparse por los problemas de sobrecarga que pueden derivar de la entrega continua.

¿Qué es la entrega continua o implementación continua?

Cuando necesita configurar una canalización de entrega continua (EC), la implementación de Jenkins en Kubernetes Engine proporciona importantes beneficios en comparación con una implementación estándar basada en VM.

Cuando su proceso de compilación utiliza contenedores, un host virtual puede ejecutar trabajos en múltiples sistemas operativos. Kubernetes Engine proporciona ejecutores de compilación efímera que solo se utilizan cuando las compilaciones se ejecutan activamente, lo que deja recursos para otras tareas de clúster, como los trabajos de procesamiento por lotes. Otro beneficio de los ejecutores de compilación efímera es la velocidad: se inician en cuestión de segundos.

Kubernetes Engine también viene equipado con el balanceador de cargas global de Google, que puede utilizar para automatizar el enrutamiento del tráfico web a sus instancias. El balanceador de cargas maneja la terminación SSL y utiliza una dirección IP global que está configurada con la red troncal de Google. Junto con su frontend web, este balanceador de cargas siempre pondrá a sus usuarios en la ruta más rápida posible a una instancia de aplicación.

Ahora que aprendimos un poco sobre Kubernetes, Jenkins y cómo interactúan los dos en una canalización de EC, es hora de crear una.

Únase a Qwiklabs para leer este lab completo… y mucho más.

  • Obtenga acceso temporal a Google Cloud Console.
  • Más de 200 labs para principiantes y niveles avanzados.
  • El contenido se presenta de a poco para que pueda aprender a su propio ritmo.
Únase para comenzar este lab