arrow_back

Cómo configurar Jenkins en Kubernetes Engine

Unirse Acceder
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Cómo configurar Jenkins en Kubernetes Engine

Lab 1 hora universal_currency_alt 5 créditos show_chart Intermedio
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP117

Labs de autoaprendizaje de Google Cloud

En este lab práctico, aprenderás a configurar Jenkins en Google Kubernetes Engine para organizar tu canalización de entrega de software.

Objetivos

  • Crear un clúster de Kubernetes con Kubernetes Engine
  • Crear una implementación y servicios de Jenkins
  • Establecer conexión con Jenkins

Configuración y requisitos

Antes de hacer clic en el botón Comenzar lab

Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.

Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.

Para completar este lab, necesitarás lo siguiente:

  • Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
Nota: Usa una ventana de navegador privada o de Incógnito para ejecutar este lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
  • Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Nota: Si ya tienes un proyecto o una cuenta personal de Google Cloud, no los uses en este lab para evitar cargos adicionales en tu cuenta.

Cómo iniciar su lab y acceder a la consola de Google Cloud

  1. Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab que tiene estos elementos:

    • El botón Abrir la consola de Google
    • Tiempo restante
    • Las credenciales temporales que debe usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haga clic en Abrir la consola de Google. El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ve el diálogo Elegir una cuenta, haga clic en Usar otra cuenta.
  3. Si es necesario, copie el nombre de usuario del panel Detalles del lab y péguelo en el cuadro de diálogo Acceder. Haga clic en Siguiente.

  4. Copie la contraseña del panel Detalles del lab y péguela en el cuadro de diálogo de bienvenida. Haga clic en Siguiente.

    Importante: Debe usar las credenciales del panel de la izquierda. No use sus credenciales de Google Cloud Skills Boost. Nota: Usar su propia Cuenta de Google podría generar cargos adicionales.
  5. Haga clic para avanzar por las páginas siguientes:

    • Acepte los términos y condiciones.
    • No agregue opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No se registre para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Cloud en esta pestaña.

Nota: Para ver el menú con una lista de los productos y servicios de Google Cloud, haga clic en el Menú de navegación que se encuentra en la parte superior izquierda de la pantalla. Ícono del menú de navegación

Activa Cloud Shell

Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.

  1. Haz clic en Activar Cloud Shell Ícono de Activar Cloud Shell en la parte superior de la consola de Google Cloud.

Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.

  1. Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
  1. Haz clic en Autorizar.

  2. Ahora, el resultado debería verse de la siguiente manera:

Resultado:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project

Resultado:

[core] project = <project_ID>

Resultado de ejemplo:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: Para obtener toda la documentación de gcloud, consulta la guía con la descripción general de gcloud CLI en Google Cloud.

Tarea 1. Prepara el entorno

Primero, prepararás tu entorno de implementación y descargarás una aplicación de muestra.

  1. Configura la zona predeterminada de Compute Engine en :
gcloud config set compute/zone {{{project_0.default_zone}}}
  1. Clona el código de muestra con el siguiente comando:
git clone https://github.com/GoogleCloudPlatform/continuous-deployment-on-kubernetes.git
  1. Dirígete al directorio del código de muestra:
cd continuous-deployment-on-kubernetes

Crea un clúster de Kubernetes

A continuación, usarás Kubernetes Engine para crear y administrar tu clúster de Kubernetes.

  1. Luego, usa Kubernetes Engine para aprovisionar un clúster de Kubernetes. Este paso puede tardar varios minutos en completarse:
gcloud container clusters create jenkins-cd \ --num-nodes 2 \ --scopes "https://www.googleapis.com/auth/projecthosting,cloud-platform"

Los permisos adicionales sirven para que Jenkins acceda a Cloud Source Repositories y a Google Container Registry.

Prueba la tarea completada

Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.

Crear un clúster de Kubernetes (zona: )
  1. Confirma que tu clúster se está ejecutando:
gcloud container clusters list

Resultado de ejemplo:

Busca RUNNING en la columna STATUS:

NAME LOCATION MASTER_VERSION MASTER_IP MACHINE_TYPE NODE_VERSION NUM_NODES STATUS jenkins-cd {{{project_0.default_zone}}} 1.9.7-gke.3 35.237.126.84 e2-medium 1.9.7-gke.3 2 RUNNING
  1. Obtén las credenciales para tu clúster. Kubernetes Engine utiliza estas credenciales para acceder al clúster recientemente aprovisionado.
gcloud container clusters get-credentials jenkins-cd
  1. Confirma que puedes conectarte a tu clúster:
kubectl cluster-info

Resultado de ejemplo: Si el clúster se encuentra activo, aparecen las URLs en las que es posible acceder a tus componentes de Kubernetes:

Kubernetes master is running at https://130.211.178.38 GLBCDefaultBackend is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/default-http-backend Heapster is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/heapster KubeDNS is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/kube-dns kubernetes-dashboard is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard

Tarea 2. Configura Helm

En este lab, usarás Helm para instalar Jenkins desde el repositorio de gráficos. Helm es un administrador de paquetes que facilita la configuración y la implementación de aplicaciones de Kubernetes. En Cloud Shell, ya tendrás preinstalada una versión reciente y estable de Helm.

Si tienes curiosidad, puedes ejecutar helm version en Cloud Shell para verificar qué versión estás usando y también asegurarte de que Helm esté instalado.

  1. Agrega el repositorio de gráfico jenkins de Helm:
helm repo add jenkins https://charts.jenkins.io
  1. Actualiza el repo para asegurarte de tener la lista más reciente de gráficos:
helm repo update

Tarea 3. Instala y configura Jenkins

Usarás un archivo de valores personalizados para agregar el complemento específico de Google Cloud que se necesita para usar las credenciales de la cuenta de servicio para llegar a tu Cloud Source Repository.

  1. Utiliza la CLI de Helm para implementar el gráfico con tus ajustes de configuración:
helm upgrade --install -f jenkins/values.yaml myjenkins jenkins/jenkins

Prueba la tarea completada

Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.

Configurar e instalar Jenkins
  1. Una vez que se complete ese comando, asegúrate de que el Pod de Jenkins pase al estado Running y que el contenedor tenga el estado READY. Esto podría tardar unos 2 minutos:
kubectl get pods

Resultado de ejemplo:

NAME READY STATUS RESTARTS AGE myjenkins-0 2/2 Running 0 1m
  1. Ejecuta el comando siguiente para configurar la redirección de puertos a la IU de Jenkins desde Cloud Shell:
echo http://127.0.0.1:8080 kubectl --namespace default port-forward svc/myjenkins 8080:8080 >> /dev/null &
  1. Ahora, verifica que el servicio de Jenkins se haya creado de forma correcta con el comando siguiente:
kubectl get svc

Resultado de ejemplo:

NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE myjenkins 10.35.249.67 8080/TCP 3h myjenkins-agent 10.35.248.1 50000/TCP 3h kubernetes 10.35.240.1 443/TCP 9h

Utilizamos el complemento de Kubernetes para que nuestros nodos compiladores se inicien automáticamente, según sea necesario, cuando la instancia principal de Jenkins los solicite. Al finalizar su trabajo, los nodos se apagarán automáticamente y sus recursos se agregarán de nuevo al grupo de recursos de clústeres.

Ten en cuenta que este servicio expone los puertos 8080 y 50000 para cualquier pod que coincida con el selector. Esto expondrá la IU web de Jenkins y los puertos de registro del compilador y agente dentro del clúster de Kubernetes.

Además, el servicio jenkins-ui se expone a través de un ClusterIP, para que no se pueda acceder a él desde fuera del clúster.

Tarea 4. Conéctate a Jenkins

  1. El gráfico de Jenkins creará automáticamente una contraseña de administrador para ti. Para recuperarla, ejecuta el siguiente comando:
kubectl exec --namespace default -it svc/myjenkins -c jenkins -- /bin/cat /run/secrets/additional/chart-admin-password && echo
  1. Para acceder a la interfaz de usuario de Jenkins, haz clic en el botón Vista previa en la Web en Cloud Shell. Luego, haz clic en Vista previa en el puerto 8080:

Menú desplegable Vista previa en la Web ampliado con la opción Vista previa en el puerto 8080 destacada

  1. Ahora deberías poder acceder con el nombre de usuario admin y tu contraseña generada automáticamente.
También es posible que accedas automáticamente.

Jenkins ya está configurado en tu clúster de Kubernetes.

Pon a prueba tus conocimientos

A continuación, se presentan algunas preguntas de opción múltiple para reforzar tus conocimientos de los conceptos de este lab. Trata de responderlas lo mejor posible.

¡Felicitaciones!

Finaliza la Quest

Este lab de autoaprendizaje forma parte de la Quest de Google Cloud Skills Boost, Google Cloud Solutions I: Scaling Your Infrastructure. Una Quest es una serie de labs relacionados que forman una ruta de aprendizaje. Si completas esta Quest, obtendrás una insignia como reconocimiento por tu logro. Puedes hacer públicas tus insignias y agregar vínculos a ellas en tu currículum en línea o en tus cuentas de redes sociales. Inscríbete en esta Quest y obtén un crédito inmediato de realización. Consulta el catálogo de Google Cloud Skills Boost para ver todas las Quests disponibles.

Realiza tu próximo lab

Continúa tu Quest con Canalizaciones de entrega continua con Spinnaker y Kubernetes Engine o consulta estas sugerencias:

Próximos pasos y más información

Aquí tienes algunos pasos para continuar:

Capacitación y certificación de Google Cloud

Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.

Actualización más reciente del manual: 15 de agosto de 2022

Prueba más reciente del lab: 15 de agosto de 2022

Copyright 2024 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.