Cómo gestionar operaciones diarias y monitoreo en un Kubernetes homelab

Problema En un homelab basado en Kubernetes, la infraestructura pasa rápidamente de “contenedores corriendo” a “servicios críticos que deben estar disponibles”. El patrón recurrente es la falta de visibilidad operativa: pods que se reinician, volúmenes que entran en estado faulted, nodos que reciben presión de disco o memoria, y límites de recursos mal definidos que provocan OOMKilled. Cuando el monitoreo es solo una lista de dashboards sin alertas ni automatizaciones, cualquier anomalía se detecta demasiado tarde y la recuperación requiere intervención manual extensa. ...

June 27, 2026 · Ernesto

Cómo diagnosticar y solucionar fallos silenciosos en self‑hosted GitHub Actions runners en EKS

Problema Los pipelines de CI/CD que usan self‑hosted GitHub Actions runners dentro de un clúster EKS pueden quedar en estado “Waiting for a runner” o consumir recursos inesperados sin que aparezca ningún error en los logs. El síntoma típico es que los pods del runner aparecen “Running”, reportan “Connected to GitHub”, pero los jobs nunca se asignan. En otros casos los nodos se provisionan con el tipo de instancia equivocado (on‑demand en lugar de Spot) o la infraestructura completa se vuelve inestable cuando el clúster escala a cero. Estos fallos son “silenciosos”: el control plane muestra verde, pero la causa real está oculta en configuraciones de IAM, Helm, taints o en la interacción entre Karpenter y Terraform. ...

June 15, 2026 · Ernesto

Cómo montar un clúster Kubernetes con kubeadm en VMs de Proxmox

Problema Muchos entusiastas de homelab quieren practicar Kubernetes sin invertir en hardware dedicado. La configuración típica consiste en un host Proxmox que ejecuta varias VMs Ubuntu: una para el control‑plane y una o más para workers. El reto no es solo lanzar las VMs; es asegurarse de que la red interna, los requisitos de kubeadm y la persistencia de los componentes funcionen sin sorpresas. Cuando la red de Proxmox está configurada con puentes Linux y NAT, es fácil encontrarse con errores de “connection refused”, “node not ready” o problemas de sincronización de tiempo que hacen que el clúster nunca alcance estado “Ready”. ...

June 14, 2026 · Ernesto

Cómo migrar de CloudFormation/Ansible a Kubernetes y Terraform en producción

Problema Muchas empresas y profesionales han construido entornos productivos con CloudFormation y Ansible porque esas herramientas estaban maduras y bien soportadas cuando el proyecto arrancó. Con el tiempo, el mercado laboral y los estándares de la industria han evolucionado: Kubernetes se ha convertido en la plataforma de facto para orquestar contenedores y Terraform es la herramienta de infraestructura como código (IaC) más demandada. El reto surge cuando un ingeniero necesita demostrar que su experiencia con stacks “legacy” es transferible y, además, necesita migrar una infraestructura existente sin interrumpir el servicio. ...

June 12, 2026 · Ernesto

Cómo elegir entre Kubernetes y Docker Compose para un homelab con GitOps

Problema Muchos entusiastas de homelab quieren automatizar despliegues, versionar configuraciones y mantener sus servicios disponibles sin invertir tiempo excesivo. La pregunta recurrente es si montar un clúster Kubernetes (por ejemplo k3s) aporta suficiente valor frente a una arquitectura basada en Docker Compose, especialmente cuando el objetivo principal es GitOps y no se necesita alta disponibilidad. La decisión impacta en la curva de aprendizaje, el consumo de recursos y la flexibilidad para escalar o migrar a máquinas virtuales. ...

June 11, 2026 · Ernesto

Cómo saber si enfocarse solo en on‑prem Kubernetes sin AWS/Azure perjudica tu carrera DevOps

Problema Muchos ingenieros junior dedican su tiempo a montar clústers de Kubernetes en servidores propios, usando herramientas como K3s, Cilium, ArgoCD o Longhorn. La inquietud surge cuando el mercado laboral pide experiencia en los grandes proveedores de nube (AWS, Azure, GCP). La pregunta central es si una carrera centrada exclusivamente en infraestructura on‑prem puede quedar rezagada frente a perfiles que manejan servicios gestionados en la nube, y cómo equilibrar ambos mundos sin perder profundidad técnica. ...

June 5, 2026 · Ernesto

Cómo migrar de Azure a Hetzner y reducir costos en infraestructuras Kubernetes

Problema Muchas startups y equipos de DevOps empiezan su stack en un hyperscaler (Azure, AWS, GCP) porque el crédito inicial y la facilidad de aprovisionamiento son atractivos. Con el tiempo, la factura crece: nodos de Kubernetes, balanceadores, CDN, funciones serverless y bases de datos gestionadas. La arquitectura suele estar diseñada para evitar el lock‑in a nivel de API, pero el modelo de precios de los proveedores sigue siendo exponencial. El patrón recurrente es alto gasto operativo con poca diferenciación funcional. Cuando el presupuesto se vuelve crítico, el equipo necesita una alternativa que mantenga la disponibilidad y la capacidad de escalar, pero con un modelo de costos lineal y sin dependencias propietarias. ...

May 30, 2026 · Ernesto

Cómo simplificar la observabilidad adoptando OpenObserve en lugar de Grafana + ELK

Problema Muchas organizaciones gestionan la observabilidad con pilas dispares: Grafana para dashboards, Elasticsearch para búsqueda, Logstash o Beats para ingestión, Kibana para visualización y Prometheus/Loki para métricas y trazas. Cada componente tiene su propio ciclo de vida, configuración y requisitos de recursos. Cuando el número de microservicios crece, el número de integraciones también lo hace, y aparecen síntomas típicos: Duplicación de pipelines de ingestión (por ejemplo, un agente que envía datos a Loki y a Elasticsearch simultáneamente). Latencias de búsqueda inconsistentes porque los índices están repartidos entre varios clústeres. Costos de almacenamiento que escalan de forma no lineal al usar discos locales para Elasticsearch y volúmenes separados para métricas. Equipo de operaciones que debe mantener al menos tres repositorios de configuración (Grafana, ELK y Prometheus) y sus respectivas actualizaciones. El problema no es solo “tener muchas herramientas”, sino la fricción operativa que impide responder rápidamente a incidentes y dificulta la adopción de prácticas como el “shift‑left” en observabilidad. ...

May 30, 2026 · Ernesto

Cómo usar un emulador AWS de un solo binario en pipelines CI/CD

Problema En entornos de desarrollo y CI/CD que dependen de servicios AWS, es frecuente encontrarse con tres limitaciones: Costos – Ejecutar pruebas contra la nube real implica cargos por uso, lo que escala rápidamente con la cantidad de builds. Velocidad – Los recursos remotos añaden latencia; los pipelines se alargan y el feedback para los desarrolladores se retrasa. Cobertura – Herramientas gratuitas o de comunidad a menudo no implementan el conjunto completo de APIs, lo que obliga a escribir pruebas que sólo cubren un subconjunto de la funcionalidad real. El patrón que se repite es la necesidad de un entorno AWS local que sea rápido, completo y sin costes ocultos, capaz de integrarse tanto en máquinas locales como en clústers Kubernetes usados por los pipelines. Cuando la solución no cumple con alguno de esos requisitos, los equipos terminan combinando varios emuladores, scripts de arranque y contenedores Docker, lo que genera complejidad y puntos de falla. ...

May 29, 2026 · Ernesto

Cómo conectar un Docker Swarm cluster con Kubernetes usando VPN (WireGuard / OpenVPN)

Problema En entornos donde coexisten Docker Swarm y Kubernetes, a menudo surge la necesidad de que contenedores de Swarm consuman servicios expuestos por pods de K8s (y viceversa). Cada orquestador crea su propio overlay de red, su propio DNS interno y, por defecto, no comparten rutas. Cuando los clústers están en redes distintas o en diferentes centros de datos, la comunicación se corta a menos que se establezca una capa de red externa que los una. El patrón típico es: “un micro‑servicio legado sigue en Swarm, pero la nueva funcionalidad está en K8s; ambos deben hablar sin re‑escribir código”. ...

May 27, 2026 · Ernesto