0Pricing
DevOps Bootcamp · Lección

Pods: la unidad más pequeña

Aprenda qué es un Pod, cuál es su propósito y cómo definir y crear Pods mediante manifiestos YAML.

Pods: la unidad más pequeña es una lección gratuita de DevOps Bootcamp en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de DevOps Bootcamp, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de DevOps Bootcamp incluye 4 lecciones en total.

¡Bienvenido a los Pods!

En Kubernetes, la unidad desplegable más pequeña se denomina Pod. Considérelo el componente básico de sus aplicaciones.

En esta lección conocerá los Pods, su propósito y cómo crearlos mediante YAML.

Pods: la unidad más pequeña — ilustración 1

¿Qué es un Pod?

Un Pod es una abstracción que representa una única instancia de su aplicación. Contiene uno o más contenedores, junto con recursos compartidos.

  • Contenedores: normalmente contenedores de Docker que ejecutan el código de su aplicación.
  • Almacenamiento: volúmenes de almacenamiento compartidos para conservar los datos.
  • Red: una dirección IP única y una configuración de red para el Pod.

¿Por qué Pods y no solo contenedores?

Quizá se pregunte por qué Kubernetes usa Pods en lugar de gestionar los contenedores directamente. Estas son las razones:

  • Recursos compartidos: los contenedores de un Pod comparten el mismo espacio de nombres de red y pueden comunicarse mediante localhost.
  • Colocación conjunta: garantiza que los contenedores estrechamente vinculados (como una aplicación y su sidecar de registro) siempre se programen juntos en el mismo nodo.
  • Abstracción: los Pods proporcionan una abstracción de nivel superior, lo que facilita gestionar las aplicaciones en conjunto en lugar de contenedores individuales.

Anatomía de un Pod sencillo

La mayoría de los Pods ejecutan un solo contenedor. Este es el caso de uso más habitual. Por ejemplo, un Pod podría ejecutar únicamente un servidor web Nginx o una aplicación de Node.js.

Incluso con un solo contenedor, el Pod proporciona el contexto de red y almacenamiento, lo que lo convierte en una unidad de implementación completa.

Definición de Pods con YAML

Los objetos de Kubernetes, incluidos los Pods, suelen definirse mediante archivos YAML (YAML Ain't Markup Language). Estos archivos describen el estado deseado de los recursos.

Un YAML básico de un Pod incluye:

  • apiVersion: la versión de la API de Kubernetes.
  • kind: el tipo de objeto de Kubernetes (por ejemplo, Pod).
  • metadata: información como el name y las labels del Pod.
  • spec: el estado deseado, incluidos los contenedores que se ejecutarán.

Ejemplo: YAML de un Pod de Nginx

Veamos una definición YAML sencilla para un Pod que ejecuta un servidor web Nginx.

La sección spec.containers define los contenedores del Pod, incluidos su name, image y ports.

apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: web
spec:
  containers:
  - name: nginx
    image: nginx:latest
    ports:
    - containerPort: 80

Creación de su primer Pod

Para crear un Pod a partir de un archivo YAML, use el comando kubectl apply. Este comando indica a Kubernetes que cree o actualice los recursos según su definición.

Primero, guarde el contenido YAML anterior en un archivo llamado nginx-pod.yaml.

kubectl apply -f nginx-pod.yaml

Comprobación del estado del Pod

Después de aplicar el YAML, puede comprobar el estado de su Pod mediante kubectl get pod. Debería mostrar el Pod en estado Running.

Para obtener información más detallada, incluidos los eventos y el estado de los contenedores, use kubectl describe pod.

kubectl get pod nginx-pod
kubectl describe pod nginx-pod

Pods con varios contenedores (sidecars)

Aunque los Pods con un solo contenedor son habituales, un Pod también puede alojar varios contenedores. Normalmente están estrechamente vinculados y comparten recursos.

Un patrón común es el contenedor «sidecar», que se ejecuta junto al contenedor principal de la aplicación para proporcionar servicios auxiliares como registro, supervisión o sincronización de datos.

¡Analizaremos este patrón con más detalle en una lección futura!

Comprobación de la definición de un Pod

¿Cuál de los siguientes NO es un campo de nivel superior obligatorio en una definición YAML básica de un Pod de Kubernetes?

Repaso: Pods, la base

Ha aprendido que los Pods son las unidades desplegables más pequeñas de Kubernetes y encapsulan contenedores y recursos de almacenamiento y red.

  • Los Pods abstraen los contenedores para permitir compartir recursos y colocarlos conjuntamente.
  • Los archivos YAML definen los Pods mediante apiVersion, kind, metadata y spec.
  • Los Pods se crean con kubectl apply -f <filename> y se inspeccionan con kubectl get pod y kubectl describe pod.

¡A continuación, profundizaremos en el ciclo de vida y los estados de estos componentes fundamentales!

Preguntas frecuentes

¿La lección «Pods: la unidad más pequeña» es gratis?

Sí — el texto completo de «Pods: la unidad más pequeña» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de DevOps Bootcamp, actualiza a CoddyKit PRO. El curso de DevOps Bootcamp incluye 4 lecciones en total.

¿Qué aprenderé en «Pods: la unidad más pequeña»?

Aprenda qué es un Pod, cuál es su propósito y cómo definir y crear Pods mediante manifiestos YAML. Practicas DevOps Bootcamp con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar DevOps Bootcamp?

No se requiere experiencia previa. DevOps Bootcamp en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Pods: la unidad más pequeña»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de DevOps Bootcamp?

Sí. Cada lección de DevOps Bootcamp incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Pods: la unidad más pequeña
  2. Ciclo de vida y estados de los Pods
  3. Pods con varios contenedores (sidecars)
  4. Contenedores init y orden de inicio
← Volver a DevOps Bootcamp