Ir a

¿Qué es Kubernetes?

Con la gran popularidad de los contenedores en las organizaciones, Kubernetes, el software de administración centrado en contenedores, se convirtió en el estándar de facto para implementar y operar aplicaciones en contenedores. Google Cloud es la base de Kubernetes, que originalmente se desarrolló en Google y se lanzó como código abierto en 2014. Kubernetes se desarrolló sobre la base de la experiencia de 15 años de ejecución de cargas de trabajo en contenedores de Google y las valiosas contribuciones de la comunidad de código abierto. Inspirado en el sistema de administración de clústeres interno de Google, Borg, Kubernetes facilita todo lo asociado con la implementación y la administración de tu aplicación. Mediante la organización automática de contenedores, Kubernetes mejora la confiabilidad y reduce el tiempo y los recursos asociados a las operaciones diarias.

Obtén más información sobre GKE, Kubernetes administrado por Google Cloud.

Definición de Kubernetes

Kubernetes (a veces acortado a K8s; el 8 representa la cantidad de letras entre la “K” y la “s”) es un sistema de código abierto para implementar, escalar y administrar aplicaciones en contenedores en cualquier lugar.

Kubernetes automatiza las tareas operativas de la administración de contenedores e incluye comandos integrados para implementar aplicaciones, actualizarlas, escalarlas a fin de que se ajusten a tus necesidades, supervisarlas y mucho más. Todo esto facilita la administración de las aplicaciones.

¿Cuáles son los beneficios de Kubernetes?

Operaciones automatizadas

Kubernetes cuenta con comandos integrados para manejar gran parte del trabajo pesado que forma parte de la administración de aplicaciones, lo que te permite automatizar las operaciones del día a día. Puedes asegurarte de que las aplicaciones siempre se ejecuten de la manera que planeaste.

Abstracción de la infraestructura

Cuando instalas Kubernetes, se encarga del procesamiento, las herramientas de redes y el almacenamiento en nombre de tus cargas de trabajo. Esto les permite a los desarrolladores enfocarse en las aplicaciones y no preocuparse por el entorno subyacente.

Supervisión del estado de los servicios

Kubernetes ejecuta verificaciones de estado de manera continua en los servicios, reinicia los contenedores con errores o que se detuvieron y solo pone los servicios a disposición de los usuarios una vez que confirmó que se están ejecutando.

Kubernetes en comparación con Docker

Muchas veces se interpreta que debe elegirse uno o el otro; sin embargo, si bien Kubernetes y Docker son tecnologías muy diferentes, son complementarias para ejecutar aplicaciones en contenedores.

Docker te permite colocar todo lo necesario para ejecutar tu aplicación en una caja que puede almacenarse y abrirse cuando y donde sea necesario. Una vez que comienzas a hacer esto con tus aplicaciones, debes encontrar la forma de administrar dichas cajas; esa es la función de Kubernetes.

Kubernetes es una palabra griega que significa “capitán” en español. Así como el capitán es responsable de navegar el barco de forma segura en el mar, Kubernetes es responsable de trasladar y entregar las cajas de forma segura a las ubicaciones en las que puedan usarse.

  • Kubernetes puede usarse con o sin Docker
  • Docker no es una alternativa a Kubernetes, por lo que no es una cuestión de “Kubernetes o Docker”. Se trata de usar Kubernetes y Docker para colocar las aplicaciones en contenedores y ejecutarlas a gran escala.
  • La diferencia entre Docker y Kubernetes está en la función que cada uno cumple en la creación de contenedores y la ejecución de las aplicaciones.
  • Docker es un estándar de la industria para el empaquetado y la distribución de aplicaciones en contenedores.
  • Kubernetes usa Docker para implementar, administrar y escalar aplicaciones en contenedores.

¿Para qué se usa Kubernetes?

Kubernetes se usa para crear aplicaciones fáciles de administrar e implementar en cualquier lugar. Cuando está disponible como un servicio administrado, Kubernetes te ofrece una variedad de soluciones según tus necesidades. Estos son algunos de los casos de uso más comunes.

Aumento de la velocidad de desarrollo

Kubernetes te ayuda a compilar apps basadas en microservicios y nativas de la nube. También admite la creación de contenedores de apps existentes, por lo que se convierte en la base de la modernización de aplicaciones y te permite desarrollar apps más rápido.

Implementación de aplicaciones en cualquier lugar

Kubernetes está diseñado para usarse en cualquier lugar, lo que te permite ejecutar aplicaciones entre implementaciones locales y nubes públicas, además de en implementaciones híbridas. Por esta razón, puedes ejecutar tus aplicaciones en el lugar que las necesites.

Ejecución de servicios eficientes

De forma automática, Kubernetes puede ajustar el tamaño de un clúster necesario para ejecutar un servicio. Esto te permite escalar verticalmente tus aplicaciones de forma automática en función de la demanda y ejecutarlas de manera eficiente.

Creado por los mismos desarrolladores que compilaron Kubernetes, Google Kubernetes Engine (GKE) es un servicio de Kubernetes basado en la nube fácil de usar para ejecutar aplicaciones en contenedores. GKE puede ayudarte a implementar una estrategia de Kubernetes exitosa para tus aplicaciones en la nube. Con Anthos, Google ofrece una experiencia de Kubernetes coherente para tus aplicaciones locales y en varias nubes. Mediante Anthos, obtienes una forma confiable, eficiente y segura de ejecutar clústeres de Kubernetes en cualquier lugar.