Tutorial completo de Kubernetes | Curso de Kubernetes | Curso práctico con muchas demostraciones
Conéctate conmigo 👋
▬▬▬▬▬▬ H O R A R I O ⏰ ▬▬▬▬▬▬
0:00 - Resumen del curso
2:18 - ¿Qué es K8s?
5:20 - Componentes principales de K8s
22:29 - Arquitectura de K8s
34:47 - Minikube y kubectl - Configuración local
44:52 - Comandos principales de Kubectl - CLI de K8s
1:02:03 - Archivo de configuración YAML de K8s
1:16:16 - Proyecto de demostración: MongoDB y MongoExpress
1:46:16 - Organizando tus componentes con los espacios de nombres de K8s
2:01:52 - Explicación de K8s Ingress
2:24:17 - Helm - Gestor de paquetes
2:38:07 - Persistencia de datos en K8s con volúmenes
2:58:38 - Despliegue de aplicaciones con estado usando StatefulSet
3:13:43 - Explicación de los servicios de K8s
▬▬▬▬▬▬ RESUMEN DEL CURSO 📚 ▬▬▬▬▬▬
🔥 ¿Qué es Kubernetes? 🔥
► ¿Qué problemas resuelve Kubernetes?
► ¿Qué características ofrecen las herramientas de orquestación de contenedores?
🔥 Componentes principales de K8s 🔥
► Nodo y Pod
► Servicio e Ingress
► ConfigMap y Secret
► Volúmenes
► Deployment y StatefulSet
🔥 Arquitectura de K8s 🔥
► Nodos trabajadores
► Nodos maestros
► Api Server
► Scheduler
► Controller Manager
► etcd - el cerebro del clúster
🔥 Minikube y kubectl - Configuración local 🔥
► ¿Qué es minikube?
► ¿Qué es kubectl?
► instalar minikube y kubectl
► crear y arrancar un clúster de minikube
🔗 Enlaces:
🔥 Comandos principales de Kubectl - CLI de K8s 🔥
► Obtener el estado de diferentes componentes
► crear un pod/deployment
► capas de abstracción
► cambiar el pod/deployment
► depuración de pods
► eliminar pod/deployment
► CRUD aplicando archivo de configuración
🔥 Archivo de configuración YAML de K8s 🔥
► 3 partes de un archivo de configuración de Kubernetes (metadatos, especificación, estado)
► formato del archivo de configuración
► plantilla para pods (template)
► conectando servicios a deployments y pods (etiqueta & selector & puerto)
► demostración
🔥 Proyecto de demostración 🔥
► Despliegue de MongoDB y Mongo Express
► Pod de MongoDB
► Secret
► Servicio interno de MongoDB
► Servicio de Deployment y Config Map
► Servicio externo de Mongo Express
🔥 Organizando tus componentes con los espacios de nombres de K8s 🔥
► ¿Qué es un Namespace?
► 4 espacios de nombres predeterminados
► Crear un Namespace
► ¿Por qué usar espacios de nombres? 4 casos de uso
► Características de los espacios de nombres
► Crear componentes en espacios de nombres
► Cambiar el espacio de nombres activo
🔥 Explicación de K8s Ingress 🔥
► ¿Qué es Ingress? Servicio externo vs. Ingress
► Ejemplo de archivos de configuración YAML para servicio externo e Ingress
► Configuración de servicio interno para Ingress
► ¿Cómo configurar Ingress en tu clúster?
► ¿Qué es el controlador de Ingress?
► Entorno en el que se ejecuta tu clúster (proveedor de nube o hardware)
► Demostración: Configurar Ingress en Minikube
► Backend predeterminado de Ingress
► Casos de uso de enrutamiento
► Configuración del certificado TLS
🔗 Enlaces:
🔥 Helm - Gestor de paquetes 🔥
► Gestor de paquetes y Helm Charts
► Motor de plantillas
► Casos de uso para Helm
► Estructura de Helm Chart
► Inyección de valores en archivos de plantilla
► Gestión de versiones / Tiller (¡Versión 2 de Helm!)
🔗 Enlaces:
🔥 Persistencia de datos en K8s con volúmenes 🔥
► La necesidad de almacenamiento persistente y requisitos de almacenamiento
► Volumen persistente (PV)
► Tipos de volúmenes locales vs remotos
► ¿Quién crea el PV y cuándo?
► Solicitud de volumen persistente (PVC)
► Niveles de abstracción de volúmenes
► ConfigMap y Secret como tipos de volúmenes
► Clase de almacenamiento (SC)
🔥 Despliegue de aplicaciones con estado usando StatefulSet 🔥
► ¿Qué es StatefulSet? Diferencia entre aplicaciones sin estado y con estado
► Despliegue de aplicaciones con estado y sin estado
► Deployment vs StatefulSet
► Identidad del Pod
► Escalado de aplicaciones de base de datos: Pods Maestro y Trabajador
► Estado del Pod, Identificador del Pod
► 2 puntos finales del Pod
🔥 Servicios de K8s 🔥
► ¿Qué es un Servicio en K8s y cuándo lo necesitamos?
► Servicios ClusterIP
► Comunicación de Servicios
► Servicios de múltiples puertos
► Servicios sin cabeza
► Servicios NodePort
► Servicios LoadBalancer