Tipos de QoS en Kubernetes

| Última modificación: 25 de octubre de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Kubernetes es una plataforma que destaca por su gestión de cargas de trabajo y servicio; además, se reconoce por sus múltiples recursos y funcionalidades. Para el mantenimiento de esta plataforma, se requieren a su vez una serie de servicios, como es el caso de las Quality of Service QoS en Kubernetes, es decir, los tipos de calidades de servicio que aplica el sistema.

Las QoS en Kubernetes resultan de gran utilidad para labores como el manejo de los recursos de pods en el sistema, de acuerdo con sus límites y requerimiento. El conocimiento de estas opciones es de suma importancia para la plataforma y su manejo, por eso, en este artículo, te enseñaremos qué son, cuáles son sus características y los tipos de QoS más importantes que hay.

¿Qué son los QoS en Kubernetes?

La opción de Quality of Service QoS en Kubernetes se refiere a las herramientas que se encargan del uso de diferentes tecnologías o mecanismos que tienen la capacidad de controlar el tráfico y asegurar el rendimiento de aplicaciones críticas que tengan una red limitada.

Además de esto, los tipos de QoS en Kubernetes tienen como objetivo permitir que las redes prioricen el tráfico, al tiempo que proporcionan un mejor ancho de banda y una latencia más baja.

La implementación de las QoS en Kubernetes contribuyen además, a la mejora del rendimiento de la plataforma y sus servicios de redes.

Características de los QoS en Kubernetes

Dentro de las principales características de los tipos de QoS en Kubernetes se encuentra que son capaces de realizar las labores relacionadas con el mantenimiento de los pods. Así, por ejemplo, en el caso de los que necesitan estar activos, tienen la posibilidad de realizar la solicitud por recursos del QoS de Guaranteed, mientras que los pods que tengan necesidades menos específicas y de menor exigencia, pueden hacer uso de los recursos con menos de Guaranteed o, directamente, sin ella.

🔴 ¿Quieres entrar de lleno al mundo DevOps & Cloud Computing? 🔴

Descubre el DevOps & Cloud Computing Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en DevOps & Cloud Computing por una semana

También se debe tener en cuenta que, para cada una de esos recursos, los contenedores se encargan de indicar una solicitud (request), es decir, la cantidad de ese recurso que el sistema puede garantizarle al contenedor, y un límite (limit), que establece la cantidad máxima permitida para el uso del container de Kubernetes.

Tipos de QoS en Kubernetes

Algunos de los tipos de QoS en Kubernetes que se utilizan para el manejo de los diferentes recursos de pods en la plataforma son:

Guaranteed

Esta opción se considera en los recursos de pods como una prioridad máxima, por lo que se encarga de garantizar que estos no mueran en el sistema hasta que puedan exceder sus límites. Se caracteriza, además, porque al utilizarlo todo tiene un request y un limit.

Burstable

En este tipo de QoS aplicado en la plataforma de Kubernetes, los pods cuentan con alguna garantía de recursos mínimos, pero no pueden hacer uso de más recursos cuando se encuentren disponibles. Para este QoS, puede haber algún request.

BestEffort

Para el QoS de BestEffort, los pods se toman como la prioridad más baja , por lo que los procesos de esos pods serán los primeros en morir en caso de que el sistema agote su memoria. A pesar de esto, estos contenedores tienen la capacidad de emplear la cantidad de memoria disponible en el nodo que quieran. En este caso, nada tiene un request ni un limit.

Consideraciones de los tipos de QoS en Kubernetes

Al manejar los diferentes tipos de QoS en Kubernetes, debes tener en cuenta una serie de consideraciones adicionales, como, por ejemplo, las que te mencionamos a continuación:

  • En los casos en los que un nodo esté bajo mucha presión de memoria, lo primero que se mata son los pods BestEffort y, posteriormente, los de tipo Burstable; nunca los Guaranteed, excepto que superen su propio límite de memoria.
  • Si un pod excede su límite de memoria, el sistema se encargará de matarlo.
  • En el caso de que un pod intente usar CPU por encima del límite, se recomienda el uso de la medida de CPU throttling.

¿Cuál es el siguiente paso?

En este articulo has podido conocer qué son los QoS en Kubernetes, así como sus características, tipos y consideraciones principales. Ahora, si ya has alcanzado este nivel, es porque te interesa profundizar acerca de esta y otras opciones de Kubernetes y otras plataformas del sector IT, por eso, no dudes en dar el siguiente paso e inscríbete en nuestro DevOps & Cloud Computing Full Stack Bootcamp.

En este bootcamp, recibirás una formación teórica y práctica de calidad que te permitirá, en pocos meses, convertirte en un experto del mundo tecnológico, al tiempo que obtienes una ventaja frente a tus competidores. ¡Anímate a matricularte para continuar con tu proceso de aprendizaje y convertirte en un profesional!

Xoán Mallón

Senior DevOps Engineer en Zscaler & Coordinador del Bootcamp DevOps & Cloud Computing.

Posts más leídos

¡CONVOCATORIA ABIERTA!

DevOps & Cloud Computing

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado