0Pricing
Kubernetes Basics · Lezione

Quote delle risorse e intervalli dei limiti

Prevenga i problemi causati dai vicini rumorosi e dai workload incontrollati applicando ResourceQuotas a livello di namespace e LimitRanges per ogni Pod.

Quote delle risorse e intervalli dei limiti è una lezione Kubernetes Basics gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Kubernetes Basics, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Kubernetes Basics include 4 lezioni in totale.

Vincoli per i cluster condivisi

In un cluster condiviso, un team può consumare accidentalmente tutte le risorse. ResourceQuotas e LimitRanges sono vincoli che mantengono equi i namespace e prevengono le interruzioni del servizio.

Che cos'è una ResourceQuota?

Una ResourceQuota limita le risorse totali che un namespace può consumare: CPU, memoria e quantità di oggetti come Pod o Service.

Una quota di calcolo

Questa quota limita il totale delle requests e dei limits di tutti i Pod nel namespace.

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

Quote sul numero di oggetti

Le quote possono anche limitare quanti oggetti di ciascun tipo possono esistere, prevenendo la proliferazione accidentale.

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

Regola di applicazione delle quote

Quando viene impostato un ResourceQuota per le risorse di calcolo, ogni Pod deve dichiarare requests e limits, altrimenti viene rifiutato. La quota non può tenere conto di Pod senza limiti.

Verifica dell'utilizzo della quota

Esamini quanto di una quota viene consumato in qualsiasi momento.

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

Che cos'è un LimitRange?

Un LimitRange applica valori predefiniti e vincoli per oggetto all'interno di un namespace, così i singoli Pod restano vincolati anche se uno sviluppatore dimentica di impostare i valori.

Valori predefiniti e vincoli

Un LimitRange può inserire requests/limits predefiniti e imporre min/max per container.

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

Come funzionano insieme

LimitRange inserisce i valori predefiniti per ogni container; ResourceQuota somma quindi tutti i valori e li confronta con il limite del namespace. Insieme garantiscono dimensionamenti adeguati per ogni Pod e un totale equo per il namespace.

Risoluzione dei problemi relativi ai rifiuti

Se un Pod viene rifiutato, l'errore indica la policy responsabile. Lo legga attentamente: specifica se è stata superata la quota o se è stato violato un vincolo di LimitRange.

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

Suggerimenti per la produzione

  • Imposti un LimitRange affinché le requests dimenticate non violino la quota
  • Dimensioni le quote in base all'utilizzo reale, lasciando margine per i picchi
  • Esamini regolarmente l'utilizzo e modifichi le quote man mano che i team crescono

Verifica rapida

Verifichi la sua comprensione dei vincoli del namespace.

Riepilogo

Ha imparato ad applicare l'equità con le ResourceQuotas (limiti a livello di namespace per le risorse di calcolo e il numero di oggetti) e i LimitRanges (valori predefiniti e vincoli per container). Usati insieme, prevengono i problemi del noisy neighbor e mantengono stabili i cluster condivisi: una best practice fondamentale in produzione.

Domande Frequenti

La lezione «Quote delle risorse e intervalli dei limiti» è gratuita?

Sì — il testo completo di «Quote delle risorse e intervalli dei limiti» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Kubernetes Basics, passa a CoddyKit PRO. Il corso Kubernetes Basics include 4 lezioni in totale.

Cosa imparerò in «Quote delle risorse e intervalli dei limiti»?

Prevenga i problemi causati dai vicini rumorosi e dai workload incontrollati applicando ResourceQuotas a livello di namespace e LimitRanges per ogni Pod. Eserciti Kubernetes Basics con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Kubernetes Basics?

Non è richiesta alcuna esperienza precedente. Kubernetes Basics su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Quote delle risorse e intervalli dei limiti»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Kubernetes Basics?

Sì. Ogni lezione Kubernetes Basics include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Diagnosi dei problemi comuni
  2. Debug dei Pod e dei Service
  3. Best practice e suggerimenti per la produzione
  4. Quote delle risorse e intervalli dei limiti
← Torna a Kubernetes Basics