Diferencias entre contenedores y máquinas virtuales

Clase 19 de 31Curso de Google Associate Cloud Engineer Certification

Resumen

Objetivo de la clase

El objetivo del profesor era introducir a los estudiantes en los conceptos fundamentales de contenedores y Kubernetes, estableciendo las bases teóricas necesarias antes de proceder con implementaciones prácticas. Se buscaba que los estudiantes comprendieran las ventajas de los contenedores sobre las máquinas virtuales y entendieran la arquitectura básica de Kubernetes.

Habilidades desarrolladas

  • Análisis comparativo: Capacidad para evaluar las diferencias entre contenedores y máquinas virtuales
  • Comprensión de arquitecturas: Entendimiento de la estructura y componentes de Kubernetes
  • Pensamiento sistémico: Visualización de cómo los diferentes componentes interactúan en un sistema de orquestación
  • Identificación de problemas: Reconocimiento de las limitaciones de las tecnologías tradicionales

Conceptos clave

  • [0:35] Contenedores: Unidades de software que empaquetan código y dependencias para ejecutarse de manera consistente
  • [0:16] Kubernetes: Plataforma de orquestación de contenedores para automatizar despliegue, escalado y gestión
  • [0:35] Máquinas virtuales: Tecnología previa que virtualizaba sistemas operativos completos
  • [1:20] Autoescalamiento: Capacidad de ajustar automáticamente recursos según la demanda
  • [1:37] Portabilidad: Característica que permite ejecutar contenedores en diferentes entornos
  • [2:08] Optimización de recursos: Uso eficiente de recursos compartiendo el sistema operativo base
  • [3:10] Orientación a tareas específicas: Diseño de contenedores para funciones particulares
  • [3:39] Mascotas vs Ganado: Filosofía de infraestructura desechable vs servidores únicos
  • [6:52] Pod: Unidad básica de despliegue en Kubernetes que agrupa contenedores relacionados
  • [7:35] Deployment: Plantilla de configuración para crear y gestionar réplicas de pods
  • [8:15] Service: Objeto que balancea carga entre pods usando labels
  • [9:41] Ingress: Componente que gestiona acceso externo, certificados SSL y enrutamiento por dominios

Palabras clave importantes

  • Docker
  • Escalabilidad
  • Resiliencia
  • Balanceador de carga
  • Labels
  • Cluster IP
  • Proxy inverso
  • Certificados SSL
  • Horizontal Pod Autoscaler

Hechos importantes

  • [1:26] Los contenedores inician en milisegundos vs varios segundos para máquinas virtuales
  • [2:16] En máquinas virtuales, el 80% de recursos son consumidos por el sistema operativo
  • [4:22] Docker es la herramienta principal para construir contenedores
  • [8:46] Existen diferentes tipos de servicios: balanceador externo, interno y cluster IP
  • [9:09] Los servicios cluster IP son los más utilizados para comunicación interna
  • [10:23] Horizontal pod autoscaler es un concepto avanzado de Kubernetes

Principales puntos de datos

No se presentaron datos numéricos específicos o métricas cuantitativas en esta clase, ya que se enfocó en conceptos teóricos y arquitecturales fundamentales.