Kubernetes Basics · Lección

Cuotas de recursos y rangos de límites

Evite los problemas de vecinos ruidosos y las cargas de trabajo descontroladas aplicando ResourceQuotas a nivel de namespace y LimitRanges por Pod.

Lección 4 de 413 pasos

Cuotas de recursos y rangos de límites es una lección gratuita de Kubernetes Basics en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Kubernetes Basics, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Kubernetes Basics incluye 4 lecciones en total.

Protecciones para clústeres compartidos

En un clúster compartido, un equipo puede consumirlo todo accidentalmente. ResourceQuotas y LimitRanges son controles que mantienen la equidad entre los espacios de nombres y evitan interrupciones.

¿Qué es una ResourceQuota?

Una ResourceQuota limita los recursos totales que puede consumir un espacio de nombres: CPU, memoria y cantidades de objetos como Pods o Services.

Una cuota de cómputo

Esta cuota limita el total de requests y limits de todos los Pods del espacio de nombres.

apiVersion: v1
kind: ResourceQuota
metadata:
  name: team-compute
  namespace: team-a
spec:
  hard:
    requests.cpu: '4'
    requests.memory: 8Gi
    limits.cpu: '8'
    limits.memory: 16Gi

Cuotas de cantidad de objetos

Las cuotas también pueden limitar cuántos objetos de cada tipo pueden existir, lo que evita una proliferación accidental.

spec:
  hard:
    pods: '20'
    services: '5'
    persistentvolumeclaims: '10'

La regla de aplicación de cuotas

Cuando se establece un ResourceQuota para cómputo, cada Pod debe declarar requests y limits; de lo contrario, se rechaza. La cuota no puede contabilizar Pods sin límites definidos.

Comprobar el uso de las cuotas

Inspeccione cuánto se consume de una cuota en cualquier momento.

kubectl describe resourcequota team-compute -n team-a
# Resource         Used  Hard
# requests.cpu     2     4
# requests.memory  3Gi   8Gi

¿Qué es un LimitRange?

Un LimitRange aplica valores predeterminados y límites por objeto dentro de un namespace, de modo que los Pods individuales quedan restringidos incluso si un desarrollador olvida establecer los valores.

Valores predeterminados y límites

Un LimitRange puede inyectar requests/limits predeterminados y aplicar valores mínimos y máximos por contenedor.

apiVersion: v1
kind: LimitRange
metadata:
  name: container-limits
  namespace: team-a
spec:
  limits:
  - type: Container
    default:
      cpu: 500m
      memory: 256Mi
    defaultRequest:
      cpu: 250m
      memory: 128Mi
    max:
      cpu: '2'
      memory: 1Gi

Cómo funcionan conjuntamente

LimitRange completa los valores predeterminados de cada contenedor; después, ResourceQuota suma todo y lo compara con el límite del namespace. Juntos garantizan tanto un dimensionamiento adecuado por Pod como un total equitativo para el namespace.

Solucionar rechazos

Si se rechaza un Pod, el error indica la política que lo ocasionó. Léalo con atención: le indica si superó la cuota o infringió un límite de LimitRange.

# exceeded quota: team-compute, requested: requests.cpu=2, used: 3, limited: 4
# maximum cpu usage per Container is 2, but limit is 4

Consejos para producción

  • Establezca un LimitRange para que los requests olvidados no infrinjan la cuota
  • Dimensione las cuotas a partir del uso real, dejando margen para los picos
  • Revise el uso con regularidad y ajústelo a medida que crezcan los equipos

Comprobación rápida

Compruebe su comprensión de las protecciones del namespace.

Resumen

Aprendió a garantizar la distribución equitativa mediante ResourceQuotas (límites de cómputo y cantidad de objetos para todo el namespace) y LimitRanges (valores predeterminados y límites por contenedor). Usados conjuntamente, evitan los problemas de vecinos ruidosos y mantienen estables los clústeres compartidos, una práctica esencial para producción.

Gratis para empezar

Aprende Kubernetes Basics con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
12
Lecciones
48

Preguntas frecuentes

¿La lección «Cuotas de recursos y rangos de límites» es gratis?

Sí — el texto completo de «Cuotas de recursos y rangos de límites» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Kubernetes Basics, actualiza a CoddyKit PRO. El curso de Kubernetes Basics incluye 4 lecciones en total.

¿Qué aprenderé en «Cuotas de recursos y rangos de límites»?

Evite los problemas de vecinos ruidosos y las cargas de trabajo descontroladas aplicando ResourceQuotas a nivel de namespace y LimitRanges por Pod. Practicas Kubernetes Basics con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Kubernetes Basics?

No se requiere experiencia previa. Kubernetes Basics en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Cuotas de recursos y rangos de límites»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Kubernetes Basics?

Sí. Cada lección de Kubernetes Basics incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Diagnóstico de problemas habituales
  2. Depuración de Pods y Services
  3. Prácticas recomendadas y consejos para producción
  4. Cuotas de recursos y rangos de límites
← Volver a Kubernetes Basics