¿Qué es Kubernetes?
Publicado el 23 de junio de 2025
Funcionamiento, clústeres y prácticas recomendadas
Kubernetes (K8s) ejecuta aplicaciones modernas en la nube a gran escala y con automatización, pero su dinamismo plantea desafíos complejos de seguridad. En esta guía se explica por qué es fundamental comprender y gestionar de forma proactiva estas exposiciones y vulnerabilidades ocultas para proteger sus clústeres.
Exponga los conceptos clave
- ¿Qué es Kubernetes?
- Usos de Kubernetes
- ¿Qué es un clúster de Kubernetes?
- Explicación de la arquitectura de Kubernetes
- ¿Cómo funciona Kubernetes?
- ¿Qué es un contenedor en Kubernetes?
- Kubernetes y Docker: cómo funcionan juntos
- Tutorial de Kubernetes para principiantes
- Alternativas a Kubernetes
- Gestión de vulnerabilidades en entornos de Kubernetes
- Protección de Kubernetes con gestión de exposición
- Gestión de postura de seguridad de Kubernetes (KSPM).
- Preguntas frecuentes sobre K8s
- Recursos de Kubernetes
- Productos de Kubernetes
¿Qué es Kubernetes?
Kubernetes (también conocido como K8s) automatiza la implementación, escalación y gestión de aplicaciones contenedorizadas.
Orquesta contenedores a lo largo de clústeres de máquinas en cualquier entorno: local, en la nube o híbrido.
Kubernetes aporta resiliencia, escalabilidad y seguridad a su infraestructura.
Sin embargo, su naturaleza dinámica y su arquitectura distribuida plantean complejidades de seguridad únicas que requieren gestión especializada y visibilidad constante.
A pesar de ello, Kubernetes se ha convertido en el estándar común para la orquestación de contenedores.
Ya sea que gestione microservicios, ejecute trabajos por lotes o desarrolle aplicaciones nativas en la nube, le permite controlar la complejidad sin frenar la escalación de su infraestructura.
Usos de Kubernetes
Puede utilizar Kubernetes para ejecutar cargas de trabajo en contenedores a lo largo de toda la infraestructura distribuida. Esto incluye desde aplicaciones web sencillas hasta plataformas multiservicio complejas.
K8s le permite implementar y escalar aplicaciones para cada entorno, sin necesidad de configuración manual.
Con Kubernetes, usted puede hacer lo siguiente:
- Automatizar pipelines de implementación en su flujo de trabajo de CI/CD
- Escalar microservicios con base en la demanda y el uso de recursos
- Gestionar los costos de infraestructura mediante la optimización de la densidad de contenedores
- Ejecutar entornos híbridos y multinube sin depender de determinados proveedores
- Reducir el tiempo de inactividad mediante la conmutación por error y la reparación automática incorporadas
Kubernetes está ampliamente adoptado en el desarrollo y la seguridad de aplicaciones modernas, lo que lo convierte en un componente fundamental para su pila tecnológica, así como para desarrollar y proteger aplicaciones nativas en la nube.
¿Está listo para alinear el uso de Kubernetes con la estrategia de riesgo en la nube? Sepa cómo dar prioridad a la seguridad en su modelo de implementación.
¿Qué es un clúster de Kubernetes?
Un clúster de Kubernetes constituye la base sobre la que funciona todo el sistema.
Incluye lo siguiente:
- Un plano de control, que toma decisiones generales como la programación de cargas de trabajo y la respuesta a eventos del clúster.
- Uno o más nodos de trabajo, que ejecutan los pods donde se alojan sus contenedores.
Su clúster es lo que le permite realizar implementaciones una sola vez y ejecutarlas en cualquier parte.
Sin embargo, también es donde ocurren la mayoría de los errores de configuración, especialmente cuando tiene servidores API expuestos, nodos con demasiados permisos o reglas de control de acceso basado en roles (RBAC) demasiado amplias.
Identificar y corregir estos fallos de configuración requiere una evaluación constante del estado de implementación del clúster y de la postura de seguridad.
En el Informe 2024 de Tenable sobre los riesgos en la nube, se determinó que el 78 % de las organizaciones tiene servidores API de Kubernetes de acceso público.
A veces, los atacantes solo necesitan unos minutos para explotar estas exposiciones y moverse de manera lateral en su infraestructura en la nube.
Explicación de la arquitectura de Kubernetes
Kubernetes se basa en una arquitectura modular y distribuida.
Sus componentes trabajan juntos para orquestar contenedores.
Los principales elementos de K8s son los siguientes:
- Pods, las unidades de implementación más pequeñas de Kubernetes
- Servicios, que exponen los pods al tráfico dentro o fuera del clúster
- Ingress, que gestiona el acceso externo a los servicios
- etcd, un almacén de clave-valor que guarda la configuración y el estado del clúster
- Kubelet, que se ejecuta en cada nodo y se comunica con el plano de control
- Kube-scheduler y kube-controller-manager, que automatizan la gestión de la carga de trabajo
Puede escalar y actualizar cargas de trabajo de manera declarativa mediante manifiestos YAML y dejar que Kubernetes mantenga el estado deseado, incluso si partes del entorno están desconectadas.
Su arquitectura le ofrece automatización declarativa, pero también aumenta su superficie de ataque a medida que los clústeres escalan.
¿Cómo funciona Kubernetes?
Kubernetes compara el estado actual de las cargas de trabajo con el estado deseado definido en sus archivos de configuración de manera constante.
Cuando no coinciden, toma medidas automatizadas para reparar la diferencia.
Por ejemplo, si falla un nodo, programa los pods afectados en nodos operativos.
Cuando hay una versión nueva de la aplicación disponible, Kubernetes implementa la actualización sin interrupciones, mediante estrategias como actualizaciones continuas o implementaciones azul-verde.
También se integra con sus herramientas de monitoreo, registro y políticas. Es ideal para la seguridad de aceleración de la detección (shift left), especialmente cuando se combina con pipelines de CI/CD. Usted puede integrar verificaciones de seguridad en los flujos de trabajo de desarrollo e implementación para evitar los problemas antes de que lleguen a fase de producción.
¿Desea aplicar políticas antes de la implementación? Sepa cómo Tenable integra la seguridad en cada etapa del ciclo de vida del desarrollo.
¿Qué es un contenedor en Kubernetes?
Un contenedor es un paquete de software ligero e independiente que incluye todo lo necesario para ejecutar un proceso: código, tiempo de ejecución, bibliotecas y dependencias.
En Kubernetes, los contenedores se ejecutan dentro de pods, que los agrupan para facilitar su implementación y conexión en red.
Los contenedores hacen que sus cargas de trabajo sean portátiles y coherentes, pero también introducen nuevos riesgos, especialmente en los siguientes escenarios:
- Los contenedores se ejecutan en modo privilegiado, lo que les da acceso total al host.
- Las cargas de trabajo carecen de aislamiento en tiempo de ejecución.
- Los contenedores se extraen de imágenes no verificadas.
Según el Informe 2024 de Tenable sobre los riesgos en la nube, el 44 % de las organizaciones ejecuta contenedores en modo privilegiado, lo que aumenta significativamente el riesgo de escalación de privilegios, sobre todo cuando los atacantes ya tienen acceso a API o cuentas de servicio vulnerables.
Kubernetes y Docker: cómo funcionan juntos
Docker y Kubernetes trabajan juntos en muchos entornos.
Docker es un motor de contenedores que empaqueta aplicaciones y las ejecuta como contenedores.
Por su parte, Kubernetes es un sistema de orquestación de contenedores que los implementa y gestiona a lo largo de un clúster.
Aunque Kubernetes solía depender de Docker como su tiempo de ejecución, ahora admite otros motores como Containerd, gracias a la interfaz de tiempo de ejecución en contenedores (CRI).
A partir de la versión Kubernetes 1.24, la comunidad de Kubernetes y los responsables de proyectos eliminaron la integración directa de Docker Engine como tiempo de ejecución de contenedores. La versión más reciente de Kubernetes es 1.33.
Recuerde que siempre debe monitorear lo siguiente:
- Permisos excesivos en contenedores.
- Errores de configuración de API.
- Fuentes de imágenes sin verificar.
- Componentes de tiempo de ejecución obsoletos.
Para abordar estos riesgos interconectados, es importante tener una vista unificada que abarque tanto la capa de imágenes de contenedores como la capa de orquestación.
Tutorial de Kubernetes para principiantes
Para empezar a usar Kubernetes, la forma más rápida y sencilla es implementar un clúster local con Minikube o Kind.
Estas herramientas ejecutan K8s de manera local, lo que le permite probar las implementaciones antes de trasladarlas a un entorno de producción.
Pasos básicos:
- Instale Minikube o Kind.
- Escriba un manifiesto de implementación en formato YAML.
- Utilice kubectl para aplicar la implementación.
- Exponga la aplicación como un servicio.
- Aumente o reduzca los pods para simular cargas reales.
Utilice este flujo de trabajo práctico para saber cómo Kubernetes programa pods, aplica configuraciones y responde a los fallos. Este proceso es fundamental para automatizar a escala y proteger su entorno antes de la producción.
¿Está listo para poner a prueba la seguridad de Kubernetes? Solicite una demostración de Tenable Cloud Security.
Alternativas a Kubernetes
Kubernetes es potente, pero no es la única manera de ejecutar contenedores.
Existen alternativas como las siguientes:
- Docker Swarm, para una orquestación más sencilla.
- Nomad, ideal para cargas de trabajo mixtas.
- K3s, una distribución ligera de Kubernetes.
- Servicios gestionados
Cada opción tiene ventajas y desventajas en términos de rendimiento, portabilidad y seguridad. Si la complejidad de Kubernetes resulta difícil de gestionar, considere si una solución gestionada podría adaptarse mejor a su caso de uso, especialmente para equipos más pequeños.
Gestión de vulnerabilidades en entornos de Kubernetes
La gestión de vulnerabilidades en Kubernetes va mucho más allá del escaneo tradicional de imágenes.
Los contenedores representan solo una capa: el plano de control, la configuración de clústeres y el comportamiento en tiempo de ejecución de la carga de trabajo de Kubernetes introducen riesgos adicionales.
Si bien las herramientas tradicionales detectan CVE en imágenes de contenedores, frecuentemente pasan por alto vínculos clúster-administrador excesivos, API kubelet expuestas o cargas de trabajo ejecutadas en modo privilegiado. Son estos riesgos los que los atacantes aprovechan para escalar privilegios.
Una estrategia completa de gestión de vulnerabilidades de Kubernetes incluye lo siguiente:
- Visibilidad en tiempo real a lo largo de todo el clúster.
- Las cargas de trabajo de Kubernetes suelen ser efímeras. Los pods pueden desplegarse y desaparecer en segundos. Sin integración directa entre el escáner de vulnerabilidades y el entorno de Kubernetes, los riesgos críticos pasan inadvertidos.
- Un abordaje nativo de Kubernetes proporciona visibilidad constante tanto hacia las configuraciones estáticas como hacia las cargas de trabajo dinámicas en vivo.
- Escaneo multicapa constante.
- El escaneo no se limita al código de la aplicación. También evalúa lo siguiente:
- Vulnerabilidades de la imagen de base.
- Errores de configuración en tiempo de ejecución.
- Componentes del plano de control (como etcd y el servidor API).
- Reglas RBAC y tokens de cuenta de servicio.
- Aplicación de políticas mediante marcos de referencia fiables.
- El escaneo no se limita al código de la aplicación. También evalúa lo siguiente:
- Verificaciones de seguridad con marcos como CIS Kubernetes Benchmark y Pod Security Standards.
- De esta forma, se establecen controles de seguridad a lo largo de todos los entornos, lo que garantiza una postura coherente frente a las vulnerabilidades, desde el desarrollo hasta la producción.
- Integración de la aceleración de la detección (shift left) con CI/CD.
- Los entornos de Kubernetes modernos están automatizados; las verificaciones de vulnerabilidad también deben estarlo. Tenable integra la seguridad en pipelines de CI/CD que le ayudan a bloquear archivos YAML mal configurados, imágenes vulnerables o permisos excesivos antes de llegar al clúster.
- Priorización basada en el riesgo.
- Herramientas como Tenable Cloud Security puntúan los riesgos con base en el entorno en vivo mediante la correlación de fallos de configuración con exposición activa de la red y rutas de ataque potenciales. Esto permite priorizar una ruta de explotación conocida con exposición activa sobre una CVE de baja gravedad en un contenedor aislado.
La gestión de vulnerabilidades en Kubernetes abarca tanto la configuración como el código. Necesita una plataforma que combine el análisis estático con contexto en vivo y que además ofrezca orientación de corrección ajustada al comportamiento real de sus clústeres.
¿Desea llevar la gestión de vulnerabilidades de Kubernetes a un nivel operativo? Sepa cómo Tenable ofrece visibilidad unificada y priorización basada en el riesgo.
Protección de Kubernetes con gestión de exposición
Al escalar Kubernetes a lo largo de distintos entornos, también escala su superficie de ataque.
Los clústeres son dinámicos: los pods, espacios de nombres y servicios cambian constantemente.
Sin visibilidad centralizada, resulta casi imposible comprender la exposición completa.
La gestión de exposición en Kubernetes comienza por identificar los puntos donde los atacantes obtienen el acceso inicial.
Según el Informe 2024 de Tenable sobre los riesgos en la nube, del 78 % de las organizaciones con servidores API de Kubernetes expuestos a la Internet pública, el 41 % permite el tráfico entrante.
Estas exposiciones rara vez son intencionales, pero son exactamente lo que explotan los atacantes.
Kubernetes introduce capas de exposición únicas, incluyendo las siguientes:
- Servidores API públicos con controles de acceso débiles o inexistentes.
- Controladores de entrada mal configurados que redirigen tráfico externo a servicios internos.
- Grupos públicos excesivamente utilizados como system:authenticated, que expanden los límites de confianza.
- Rutas de tráfico interno abiertas raramente segmentadas entre pods y nodos.
Estos problemas son difíciles de descubrir si se utilizan herramientas tradicionales. Por eso, la gestión de exposición de Kubernetes depende de visibilidad hacia la infraestructura y las capas de orquestación.
Debe ver cómo está configurado el clúster, dónde tiene cargas de trabajo expuestas y de qué manera las políticas de red reducen o amplifican el riesgo.
Por eso, no alcanza con escanear recursos estáticos; se necesita una detección con conocimiento del contexto que correlacione de manera constante nuevas exposiciones a medida que los clústeres escalen y las cargas de trabajo evolucionen. Esto le proporciona información sobre las potenciales rutas de ataque, desde la exposición externa hasta las vulnerabilidades en recursos internos.
Las herramientas eficaces se integran de forma directa con la API de Kubernetes, monitorean los incumplimientos de políticas y señalan las combinaciones peligrosas, como roles con permisos excesivos combinados con un punto de conexión de API accesible.
Gestión de postura de seguridad de Kubernetes (KSPM)
Si ejecuta contenedores en la etapa de producción, probablemente la experimentó la dificultad de mantener todo seguro.
Kubernetes es potente, pero también puede volverse complejo de forma rápida.
Un día todo parece funcionar sin problemas y, al siguiente, alguien le advierte que un pod tiene permisos excesivos o que sus políticas de red tienen demasiadas deficiencias.
Esa es, justamente, la razón por la que existe la gestión de la postura de seguridad de Kubernetes.
Esto es lo que suele ocurrir sin KSPM:
- Los desarrolladores se mueven rápido, lanzan nuevos servicios y ajustan configuraciones.
- Las revisiones de seguridad se realizan luego, si es que se realizan.
- Mientras tanto, los errores de configuración se acumulan. Algunos son inofensivos, pero otros pueden generar mucha atención si alguien, como un atacante, los descubre primero.
La KSPM cambia el enfoque.
En lugar de aplicar la seguridad después del incidente, ofrece visibilidad constante hacia lo que realmente sucede en los clústeres.
Es como contar con un experto en seguridad que observe constantemente cada movimiento, pero sin la incomodidad de tenerlo respirándole en la nuca.
Proceso de KSPM
En primer lugar, la KSPM determina qué se ejecuta realmente en los clústeres, inclusive aplicaciones y servicios que desconoce.
Posteriormente, compara sus configuraciones reales con las prácticas recomendadas de seguridad y sus propias reglas internas.
La parte inteligente es la priorización de los hallazgos: no todos los errores de configuración representan un problema crítico, por lo que le ayuda a enfocarse en lo que realmente importa.
Las herramientas eficaces de KSPM le ayudan a comprender por qué un problema de seguridad es un inconveniente y qué debe hacer al respecto.
Además, realizan un seguimiento para determinar si en verdad mejora con el tiempo o simplemente se mantiene a flote.
Esto se diferencia de las herramientas habituales de seguridad en la nube, como la gestión de la postura de seguridad en la nube (CSPM), ya que revisa configuraciones generales de AWS o Azure (IAM, redes, almacenamiento, etc.).
La KSPM analiza en detalle Kubernetes, específicamente. Comprende cómo se comunican los pods, qué implican las políticas a nivel de clúster y de qué maneras Kubernetes puede sorprenderle.
Cuando evalúe una solución de KSPM, evite aquellas que requieran la instalación de agentes en todas partes: ya tiene suficientes piezas móviles.
Lo ideal es una plataforma de KSPM que se integre con los flujos de trabajo de sus equipos, sin obligarlos a implementar soluciones alternativas.
La verdadera ventaja llega cuando la KSPM se integra en el proceso de desarrollo habitual.
En lugar de que la seguridad se implemente en otra parte después de un incidente, los desarrolladores reciben comentarios directamente en sus pull request.
La realidad es que la seguridad de contenedores no va a desaparecer; al contrario, se vuelve cada vez más compleja a medida que estos entornos crecen.
Tiene dos opciones: mantener el control con una solución como KSPM o tener que ponerse al día cada vez que algo sale mal.
Preguntas frecuentes sobre K8s
En términos sencillos, ¿qué es Kubernetes?
Kubernetes, también conocido como K8s, es una plataforma que automatiza la ejecución de aplicaciones en contenedores y le ayuda a escalar y gestionar contenedores a lo largo de sistemas en la nube o locales.
¿Kubernetes puede funcionar sin Docker?
Sí. Kubernetes se puede ejecutar sin Docker. Ahora utiliza Containerd u otros tiempos de ejecución predeterminadamente. Docker ya no es un requisito.
¿Cuál es la diferencia entre contenedores y Kubernetes?
Los contenedores empaquetan el código. Kubernetes gestiona cómo y dónde se ejecutan esos contenedores.
¿Es difícil aprender a utilizar Kubernetes?
Tiene una curva de aprendizaje, pero herramientas como Minikube y tutoriales le ayudan a ponerse en marcha rápidamente.
¿Kubernetes funciona en Windows?
Sí. Puede ejecutar Kubernetes en Windows mediante herramientas como Docker Desktop o WSL 2.
Kubernetes desbloquea la escalabilidad y automatización, pero solo cuando se configura y se protege de manera correcta. Los pasos en falso en RBAC, las políticas de red o los permisos de tiempo de ejecución pueden exponer a su negocio a graves amenazas.
Simplifique la seguridad de Kubernetes con confianza. Empiece ahora a usar Tenable Cloud Security.
Recursos de Kubernetes
Productos de Kubernetes
Noticias de ciberseguridad que le son útiles
- Tenable Cloud Security
- Tenable One