Formación para empresas
Kubernetes Práctico
Resumen
Kubernetes es el gestor de contenedores por excelencia. Desde su liberación al open source por parte de Google, la absorción de esta tecnología dentro del mercado ha sido exponencial. Kubernetes es el resultado de años de experiencia por parte de Google gestionando contenedores, tras varias evoluciones, el destilado final de este conocimiento, es lo que hoy tenemos entre las manos.
Kubernetes ofrece los elementos necesarios para la gestión de aplicaciones basadas en los contenedores.
En este curso migraremos una aplicación basada en una arquitectura de microservicios a Kubernetes.
Requisitos Previos
Entender qué es un contenedor.
Entender qué es una imagen de un contenedor.
Ser capaz de contenerizar aplicaciones.
Entender y saber usar el registro de imágenes (locales y remoto).
Entender cómo usar redes de contenedores a nivel básico y exponer contenedores en estas redes.
Saber cómo utilizar volúmenes asociados a los contenedores.
Manejo básico de los comandos de Linux.
Docker Compose (deseable).
Nociones básicas de microservicios (deseable).
Temario
Trabajando con contenedores - Si los alumnos no alcanzan los requisitos previos
Introducción a los contenedores
Generando imágenes de aplicaciones
Ejecutando contenedores
Networking contenedores
Usando volúmenes
Usando un registro de imágenes local y remoto
Overview solución a migrar
¿Por qué usar Kubernetes para nuestra solución?
Alternativas a Kuberetes
Desplegando una servicio web - (App sin estado)
Desplegando en un Pod
Troubleshooting
Visualizando los Pod logs
Accediendo al Pod
Comprobando el estado de la aplicación
Configurando nuestra aplicación
Storage
Conceptos básicos
Volumes
PersistentVolumes y PersistentVolumeClaims
StorageClasses
ConfigMaps
Usando variables de entorno - Key/Value Pair
Usando ficheros de configuración - Volumes
Accediendo a nuestra aplicación
Port Forwarding
Servicios
Exponiendo nuestra app al cluster - ClusterIP service
Exponiendo nuestra app al exterior - NodePort service
Balanceando peticiones entre nodos - LoadBalancer
Haciendo nuestro servicio web resiliente
Deployments
Overview ReplicaSet
Desplegando nuestra Aplicación
Escalando nuestra Aplicación
Desplegando nuevas versiones de nuestra Aplicación
Rolling Update - Estrategia por defecto
Canary Deployment
Blue-Green Deployment
Desplegando una Aplicación con estado - Postgres
Overview StatefulSet
Opciones de almacenamiento - Vuelta a StorageClass
Estableciendo cadenas de conexión - Secrets
Conectando a la base de datos
Tareas de mantenimiento
Gestionando un backup puntual - Job
Gestionando backups - CronJobs
Añadiendo nuevos elementos a nuestra solución
Desplegando un servicio de Caché - Redis
Desplegando una aplicación web
Añadiendo más servicios
Exponiendo nuestras aplicaciones de manera más eficiente
Ingress
Exponiendo un único servicio
Exponiendo múltiples servicios
Virtual Hosts
TLS
Logging y Monitorización
Overview Logs
Implementando - EFK
Visualizando logs en Kibana
Monitorización y Kubernetes Metrics Server
Implementando Prometheus
Implementando Grafana
Ficha del curso
Duración: 24 Horas. Si se incluye introducción a los contenedores 32 horas.
Rango de estudiantes recomendado: 6 - 12.