Contacta con nosotros

Temario del curso

Módulo 1: Diseño de Microservicios

• Un Buen Límite de Microservicio
• Uso del Diseño Basado en el Dominio (DDD)
• Alternativas a los Límites del Dominio de Negocio (Volatilidad, Datos, Tecnología, Organización)
• Desglose del Monolito
• Descomposición Prematura
• Descomposición por Capa
• Uso de Patrones de Descomposición (Strangler, Ejecución Paralela, Toggle de Funcionalidad)
• Preocupaciones sobre la Descomposición de Datos (Rendimiento, Integridad, Transacciones)

Módulo 2: Optimización de Docker y el Entorno de Ejecución

• Elección de la imagen base adecuada
• Minimización del número de capas
• Uso de compilaciones multinivel (multi-stage builds)
• Optimización de imágenes (ordenamiento de argumentos multilínea, etc.)
• Aprovechamiento de la caché de compilación
• Fijación de versiones de imagen
• Ajuste fino de la asignación de recursos
• Prácticas seguras para contenedores
• Configuración del entorno de ejecución para el rendimiento

Módulo 3: Kubernetes y Estrategias de Liberación

Descripción General de los Despliegues en Kubernetes
• Creación y ejecución de un Despliegue Inicial
• Opciones de Despliegue en Kubernetes

Realización de Despliegues con Actualizaciones Progresivas (Rolling Update)
• Comprensión de las Actualizaciones Progresivas
• Creación y ejecución de una Actualización Progresiva
• Reversión del Despliegue

Realización de Despliegues tipo Canario
• Comprensión de los Despliegues tipo Canario
• Creación y ejecución de un Despliegue Canario

Realización de Despliegues Azul/Verde
• Comprensión de los Despliegues Azul/Verde
• Creación y ejecución de un Despliegue Azul/Verde

Ejecución de Trabajos (Jobs) y CronJobs
• Creación de un Trabajo y CronJob

Realización de Tareas de Monitoreo y Resolución de Problemas
• Técnicas de Diagnóstico con kubectl

Módulo 4: Automatización y Eficiencia Operativa

Uso de Python para Automatizar Tareas Comunes en Kubernetes
• Uso de Python para realizar operaciones administrativas en Kubernetes
• Uso de Python para definir objetos de configuración
• Uso de Python para crear objetos de Despliegue
• Supervisión de Eventos de Kubernetes utilizando Python
• Escalado de un Despliegue utilizando Python

Comprensión de los Desafíos de la Automatización de Despliegues
• Configuración Declarativa con Kubernetes
• Gestión de la Integridad de la Configuración

Uso del Enfoque GitOps para Automatizar Despliegues
• Principios de GitOps
• Introducción a Flux
• Instalación de Flux en un Cluster de Kubernetes

Configuración de Flux para Despliegues Automatizados
• Uso de Notificaciones
• Estructura del Repositorio Origen (Source Repository)

Manejo de Actualizaciones de Aplicaciones con Automatización de Imágenes
• Actualización del Despliegue de una Aplicación con Flux
• Escaneo de Repositorios de Imágenes de Contenedor por Etiquetas
• Definición de Políticas para la selección de la Última Versión de Imagen
• Configuración de Flux para Realizar Actualizaciones Automáticas de Imagen

Módulo 5: Observabilidad y Claridad en la Causa Raíz

Capacidades de Registro y Trazabilidad en Kubernetes
• Por qué son Importantes el Registro (Logging) y la Trazabilidad
• Acceso a los Registros de Kubernetes
• Registros de Pods y Contenedores
• Registros del Plano de Control (Control Plane)
• Uso de Recursos de Nodos y Pods

Recopilación y Análisis de los Registros
• Agregación de Registros
• Visualización de Registros

Trazabilidad Distribuida en Kubernetes
• Qué es la Trazabilidad Distribuida
• Uso de OpenTelemetry
• Herramientas de Trazabilidad Distribuida
• Instrumentación de una Aplicación
• Uso de Trazabilidad para Encontrar Problemas de Rendimiento

Monitoreo con Prometheus y Grafana
• Conceptos de Observabilidad
• Herramientas de Monitoreo
• Uso de Instrumentación de Prometheus

Casos de Uso Avanzados para Registros
• Procesamiento de Registros
• Filtrado y Enriquecimiento de los Registros
• Event Sourcing (Registro de Eventos)

Módulo 6: Simulación de Crisis del Cluster y Respuesta a Incidentes

• Comprensión de los diferentes tipos de fallos en un entorno de cluster
• Simulación de Fallos de Nodo
• Evicción de Pods y Escenario de Agotamiento de Recursos
• Problemas de Red
• Fallos de DNS para el manejo de tiempos de espera de la aplicación
• Simulación de una Caída del Servidor API
• Simulación de Tráfico Elevado para la Estabilidad del Sistema
• Fallo de Almacenamiento
• Errores de Configuración
• Comprensión de los Procedimientos de Reporte de Incidentes

Módulo 7: IA para Apoyar la Resolución de Problemas

• Beneficios de la IA Generativa para Kubernetes
• Arquitectura de la CLI de K8sGPT
• Instalación de la CLI de K8sGPT
• Comandos y Uso de K8sGPT
• Uso de Analizadores de K8sGPT (podAnalyzer, pvcAnalyzer, rsAnalyzer, etc.)
• Análisis del Cluster utilizando K8sGPT
• Análisis de Problemas en Tiempo Real utilizando K8sGPT
• Operador In-Cluster para K8sGPT

Requerimientos

  • Conocimientos básicos de la línea de comandos de Linux
  • Experiencia en desarrollo de aplicaciones o administración de sistemas
  • Familiaridad con contenedores (conceptos de Docker)
  • Comprensión básica de los conceptos de Kubernetes (pods, despliegues, servicios)
  • Comprensión general de la arquitectura de software (por ejemplo, APIs, servicios)

Público objetivo:

  • Ingenieros de DevOps
  • Ingenieros de Fiabilidad del Sitio (SREs)
  • Desarrolladores Backend / Software que trabajan con microservicios
  • Ingenieros de Cloud e Ingenieros de Plataforma
  • Administradores de Sistemas que transicionan hacia entornos de Kubernetes

     

 49 Horas

Número de participantes


Precio por participante

Testimonios (2)

Próximos cursos

Categorías Relacionadas