Introducción a Kubernetes

1

¿Qué es Kubernetes y por qué es importante?

2

Configura un clúster local con Minikube o Kind

3

Arquitectura de Kubernetes: nodos, pods, servicios y componentes clave

4

Introducción a la API de Kubernetes y kubectl

5

Diferencias entre enfoques declarativos e imperativos

Quiz: Introducción a Kubernetes

Objetos y Recursos de Kubernetes

6

Pods, ReplicaSets y Deployments

7

Servicios e Ingress: Exposición de aplicaciones

8

ConfigMaps y Secrets: Gestión de configuraciones y datos sensibles

Quiz: Objetos y Recursos de Kubernetes

Redes y Almacenamiento en Kubernetes

9

Modelo de red de Kubernetes: Comunicación entre pods y servicios

10

Tipos de servicios: ClusterIP, NodePort, LoadBalancer y ExternalName

11

Volúmenes persistentes (PV) y reclamaciones (PVC)

12

DaemonSets y StatefulSets

Quiz: Redes y Almacenamiento en Kubernetes

Cargas de Trabajo y Escalado

13

Despliegue de una aplicación multi-tier en Local

14

Jobs y CronJobs: Tareas únicas y programadas

15

Escalado de aplicaciones: HPA y VPA

16

Escalado de aplicaciones en Kubernetes

Quiz: Cargas de Trabajo y Escalado

Kubernetes en la Nube

17

Introducción a EKS, AKS y GKE

18

Configuración de Kubernetes en EKS (AWS)

19

Configuración de Kubernetes en AKS (Azure) y GKE (Google Cloud)

20

Despliegue del Proyecto en la nube de AWS (EKS)

Quiz: Kubernetes en la Nube

Troubleshooting, Casos de uso y Certificaciones K8s

21

Troubleshooting en Kubernetes

22

Otros casos de uso de Kubernetes

23

Certificaciones profesionales en K8s

24

Despliegue en Kubernetes Finalizado

Aportes 1

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

### **Escalado de Aplicaciones en Kubernetes: HPA y VPA** En Kubernetes, el escalado de aplicaciones asegura que los recursos sean utilizados de manera eficiente y que las aplicaciones puedan manejar variaciones en la carga de trabajo. Kubernetes ofrece dos mecanismos principales para el escalado: * **HPA (Horizontal Pod Autoscaler):** Escala la cantidad de Pods. * **VPA (Vertical Pod Autoscaler):** Ajusta los recursos asignados (CPU y memoria) a cada Pod. ### **1. HPA: Horizontal Pod Autoscaler** El **HPA** ajusta automáticamente el número de réplicas (Pods) de una aplicación según métricas específicas, como el uso de CPU, memoria o métricas personalizadas. #### **Características:** * Escala **horizontalmente** aumentando o disminuyendo el número de Pods. * Monitorea métricas mediante el servidor de métricas de Kubernetes. * Útil para aplicaciones que necesitan manejar picos de tráfico. #### **Requisitos:** * Habilitar el **Metric Server** en el clúster para recopilar métricas. #### **Ejemplo de HPA:** Este HPA escala una aplicación entre 2 y 10 réplicas dependiendo del uso de CPU: apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: example-hpa namespace: default spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: example-deployment # Nombre del Deployment a escalar minReplicas: 2 maxReplicas: 10 metrics: \- type: Resource resource: name: cpu target: type: Utilization averageUtilization: 50 # Escala si el uso promedio de CPU supera el 50% #### **Comandos útiles:** * Ver el estado del HPA:kubectl get hpa * Inspeccionar métricas:kubectl top pods ### **2. VPA: Vertical Pod Autoscaler** El **VPA** ajusta automáticamente las solicitudes y límites de recursos (CPU y memoria) de los Pods para optimizar el rendimiento. #### **Características:** * Escala **verticalmente** ajustando los recursos asignados a cada Pod. * Recomendado para aplicaciones que tienen requerimientos de recursos variables. * Puede trabajar en tres modos: * **Off:** Solo recomienda ajustes (no aplica cambios). * **Auto:** Aplica cambios automáticamente. * **Initial:** Establece solicitudes de recursos en el momento de la creación del Pod. #### **Ejemplo de VPA:** Este VPA recomienda y ajusta recursos automáticamente: apiVersion: autoscaling.k8s.io/v1 kind: VerticalPodAutoscaler metadata: name: example-vpa namespace: default spec: targetRef: apiVersion: apps/v1 kind: Deployment name: example-deployment # Deployment objetivo updatePolicy: updateMode: "Auto" # Modos: Off, Auto, Initial #### **Comandos útiles:** * Ver recomendaciones del VPA:kubectl describe vpa example-vpa ### **3. Uso Combinado: HPA y VPA** En entornos complejos, **HPA y VPA pueden combinarse** para un escalado eficiente: * El HPA escala horizontalmente cuando hay picos de tráfico. * El VPA asegura que cada Pod tiene los recursos suficientes para ejecutar las tareas asignadas. #### Ejemplo de flujo combinado: 1. **Inicio:** VPA ajusta las solicitudes iniciales de recursos para cada Pod. 2. **Carga alta:** HPA escala horizontalmente agregando más Pods. 3. **Ajustes dinámicos:** VPA optimiza los recursos de los Pods existentes. ### **Casos de Uso** * **HPA:** * Aplicaciones web con tráfico variable. * APIs que necesitan manejar picos de solicitudes. * **VPA:** * Sistemas con requerimientos de recursos impredecibles. * Aplicaciones con uso intensivo de memoria o CPU. * **HPA + VPA:** * Entornos mixtos donde la carga y los recursos cambian constantemente. Estas herramientas permiten que Kubernetes administre automáticamente los recursos de forma eficiente, mejorando el rendimiento y reduciendo los costos operativos.
undefined