Contacta con nosotros

Temario del curso

Módulo 1: Diseño de Microservicios

• Un buen límite de microservicio
• Uso del Diseño Guiado por el Dominio (DDD)
• Alternativas a los límites del dominio empresarial (Volatilidad, Datos, Tecnología, Organizacional)
• División del monolito
• Descomposición prematura
• Descomposición por capa
• Uso de patrones de descomposición (Estrangulador, Ejecución Paralela, Interruptor de Funcionalidades)
• Consideraciones 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 multi-etapa
• Optimización de imágenes (ordenamiento de argumentos multilínea, etc.)
• Aprovechamiento de la caché de compilación
• Bloqueo de versiones de imagen
• Afinado de la asignación de recursos
• Prácticas seguras de contenedores
• Configuración del entorno de ejecución para rendimiento

Módulo 3: Kubernetes y Estrategias de Lanzamiento

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
eversionamiento del despliegue

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

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 Job y CronJob

Realización de Tareas de Monitoreo y Resolución de Problemas
• Técnicas de resolución de problemas 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
• Observación de eventos de Kubernetes usando Python
• Escalado de un despliegue usando 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 de origen (Source Repository)

Manejo de Actualizaciones de Aplicaciones con Automatización de Imágenes
• Actualización de un despliegue de aplicación con Flux
• Exploración de repositorios de imágenes de contenedor en busca de etiquetas (tags)
• Definición de políticas para la selección de la última imagen
• Configuración de Flux para realizar actualizaciones automáticas de imágenes

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

Capacidades de Registro (Logging) y Trazado en Kubernetes
• Importancia del registro y el trazado
• 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 Registros
• Agregación de registros
• Visualización de registros

Trazado Distribuido en Kubernetes
• Qué es el trazado distribuido
• Uso de OpenTelemetry
• Herramientas de trazado distribuido
• Instrumentación de una aplicación
• Uso del trazado 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 (Logging)
• Procesamiento de registros
• Filtrado y enriquecimiento de registros
• Event Sourcing

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 nodos
• Escenario de expulsión de Pods y agotamiento de recursos
• Problemas de red • Fallos de DNS para el manejo de tiempos de espera de aplicaciones • Simulación de la interrupción del servidor API • Simulación de alto tráfico 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 usando K8sGPT
• Análisis de problemas en tiempo real usando 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 conceptos de Kubernetes (pods, deployments, servicios)
  • Conocimiento general de la arquitectura de software (p. ej., APIs, servicios)

Público objetivo:

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

     

 49 Horas

Número de participantes


Precio por participante

Testimonios (2)

Próximos cursos

Categorías Relacionadas