Challenges

Focused, hands-on DevOps and server-side problems with hints, feedback, and automated solution checks.

Challenge

Construye la imagen de la tienda

El Dockerfile de la api pesa casi un giga, lleva dentro el compilador y corre como root. Conviértelo en una construcción multistage, publícalo en el registro del clúster y despliégalo. Es la imagen que el libro da por hecha desde la primera página.

Challenge

Descarga una imagen de un registro privado

La tienda ha movido sus imágenes a un registro privado y el clúster se ha quedado sin poder descargarlas. Distingue en los Events un fallo de credenciales de un fallo de nombre, crea el Secret de tipo dockerconfigjson y decide dónde colgarlo: en el Pod o en la ServiceAccount del Namespace.

Challenge

Apaga el scheduler y diagnostica el clúster

Un clúster kubeadm con todos sus componentes a la vista. Retira el kube-scheduler del control plane, comprueba que los Pods nuevos se quedan huérfanos (Pending, sin nodo y sin un solo evento) y devuélvelo a su sitio para ver cómo la reconciliación salda la deuda pendiente. Cirugía a corazón abierto sobre el control plane.

Challenge

Diagnostica y repara un Pod roto

El clúster arranca con dos Pods que no consiguen llegar al estado Running: uno en ImagePullBackOff y otro en CrashLoopBackOff. Identifica la causa de cada fallo con kubectl describe y kubectl logs, y corrige los manifiestos para que ambos Pods queden en Running. Es el pan de cada día de cualquiera que opere Kubernetes.

Challenge

Estabiliza un Pod ajustando recursos y probes

Dos Pods dan guerra: uno lleva horas en Pending sin que el scheduler le encuentre sitio, y otro se reinicia sin parar aunque la aplicación funciona perfectamente. Ajusta los requests de recursos y la liveness probe para dejar ambos Pods estables y en estado Ready. Dos clásicos absolutos de la operación de Kubernetes.

Challenge

Programa los Pods pendientes

Dos Pods llevan horas en Pending en un clúster multinodo: uno debe correr en un nodo protegido por un taint que no tolera, y el otro arrastra un volumen que no se puede mover de sitio. Consigue que ambos se programen sin quitar el taint y sin perder los datos. Scheduling de Kubernetes en estado puro.

Challenge

Recupera un Deployment con un rollback

Alguien desplegó la versión 2 de la tienda y el rollout lleva media hora atascado: la nueva imagen no existe en el registro. El servicio aguanta a medias con los Pods antiguos. Diagnostica el rollout, recupera el Deployment con un rollback y deja las 3 réplicas disponibles. El procedimiento de emergencia más valioso que existe en Kubernetes.