Despliegue Nativo de la Nube

La frontera final. Construirás un pipeline de entrega Cloud Native completo: automatizando pruebas con GitHub Actions, aprovisionando infraestructura con Terraform, desplegando en Kubernetes y orquestándolo todo con Python.

DevOps EngineerKubernetesDevOpsPython

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

La entrega cloud native combina varias formas de automatización: definición de CI, infraestructura como código, orquestación declarativa y procesamiento operativo. Este proyecto basado en desafíos prueba cada forma mediante un artefacto concreto en un entorno local preparado.

Crearás un workflow GitHub Actions, un contenedor Docker con Terraform, un manifiesto Kubernetes con varios recursos y un analizador Python de logs. Las fases comparten tema, pero son ejercicios verificados por separado, no una pipeline de producción conectada.

Lo que aprenderás

  • Definir un workflow Node.js CI que ejecute checkout, Node, instalación y tests al hacer push a main
  • Configurar el provider Docker de Terraform y crear terraform-web con Nginx y mapeo 8080:80
  • Inicializar y aplicar Terraform y verificar el contenedor local mediante Docker y HTTP
  • Crear y aplicar un Deployment Kubernetes con tres réplicas nginx:alpine y etiquetas y selectores coincidentes
  • Exponer la carga con un Service NodePort y confirmar ambos recursos en el clúster local
  • Analizar un log preparado en Python, deduplicar las IP del primer campo con un set e imprimir su cantidad

A quién va dirigido este curso

Este proyecto está dirigido a estudiantes de DevOps preparados para aplicar CI, Terraform, Kubernetes y Python introductorios sin comandos paso a paso.

Requisitos previos: Familiaridad con YAML, estructura GitHub Actions, providers y recursos Terraform, puertos Docker, Deployments y Services Kubernetes, iteración y sets Python y terminal Linux; proyecto de evaluación.

Entorno de aprendizaje: Un host Linux en navegador con Docker, Terraform, Minikube local, kubectl, Python 3, contexto Node.js y log preparado; no requiere nube ni push a GitHub.

Preguntas frecuentes

¿El workflow se ejecutará realmente en GitHub?

No. Creas y validas .github/workflows/ci.yml localmente. No se exige push, runner alojado ni demostrar que npm test pasa remotamente.

¿Terraform aprovisiona infraestructura cloud?

No. Usa kreuzwerker/docker para ejecutar un contenedor local nginx:latest. Proveedores cloud, estado remoto, módulos y red de producción quedan fuera.

¿Kubernetes está conectado al contenedor Terraform o al CI?

No. Es un ejercicio Minikube separado. Creas un Deployment de tres réplicas y un NodePort, pero ninguna pipeline lo despliega ni Terraform lo gestiona.

¿Qué hace la automatización Python?

Lee access.log, extrae el primer campo, cuenta IP únicas con un set e imprime Unique IPs: 10. No transmite logs, llama APIs ni modifica infraestructura.

Profesor

labby
Labby
Labby is the LabEx teacher.

Recomendado Para Ti

no data