De basis van Kubernetes · Les

Resourcequota's en limietbereiken

Voorkom problemen door luidruchtige buren en ontsporende workloads door ResourceQuotas op namespace-niveau en LimitRanges per Pod af te dwingen.

Les 4 van 413 stappen

Resourcequota's en limietbereiken is een gratis De basis van Kubernetes-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject De basis van Kubernetes. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus De basis van Kubernetes bevat in totaal 4 lessen.

Beveiligingsrails voor gedeelde clusters

In een gedeeld cluster kan één team per ongeluk alle resources verbruiken. ResourceQuotas en LimitRanges zijn beveiligingsrails die naamruimten eerlijk houden en storingen voorkomen.

Wat is een ResourceQuota?

Een ResourceQuota begrenst de totale resources die een naamruimte mag verbruiken: CPU, geheugen en aantallen objecten zoals Pods of Services.

Een rekenquotum

Dit quotum beperkt de totale aanvragen en limieten van alle Pods in de naamruimte.

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

Quota voor aantallen objecten

Quota's kunnen ook begrenzen hoeveel objecten van elk type er mogen bestaan, zodat onbedoelde wildgroei wordt voorkomen.

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

De regel voor quota-afdwinging

Wanneer er een ResourceQuota voor rekenresources is ingesteld, moet elke Pod aanvragen en limieten declareren, anders wordt die afgewezen. De quota kan geen rekening houden met onbeperkte Pods.

Quota-gebruik controleren

Bekijk op elk moment hoeveel van een quota is verbruikt.

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

Wat is een LimitRange?

Een LimitRange past standaardwaarden en grenzen per object toe binnen een naamruimte, zodat afzonderlijke Pods beperkt blijven, zelfs als een ontwikkelaar vergeet waarden in te stellen.

Standaardwaarden en grenzen

Een LimitRange kan standaardaanvragen en -limieten invullen en per container minimale en maximale waarden afdwingen.

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

Hoe ze samenwerken

LimitRange vult de standaardwaarden voor elke container in; ResourceQuota telt daarna alles op en vergelijkt het met de limiet voor de naamruimte. Samen zorgen ze voor een verstandige grootte per Pod én een eerlijk totaal voor de naamruimte.

Afwijzingen oplossen

Als een Pod wordt afgewezen, vermeldt de foutmelding welk beleid de oorzaak is. Lees de melding zorgvuldig: daarin staat of je de quota hebt overschreden of een grens van een LimitRange hebt geschonden.

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

Tips voor productie

  • Stel een LimitRange in, zodat vergeten aanvragen de quota niet verstoren
  • Baseer quota's op werkelijk gebruik, met extra ruimte voor pieken
  • Controleer het gebruik regelmatig en pas het aan naarmate teams groeien

Korte controle

Test je begrip van de beveiligingsmaatregelen voor naamruimtes.

Samenvatting

Je hebt geleerd hoe je eerlijk gebruik afdwingt met ResourceQuotas (limieten voor rekenresources en aantallen objecten in de hele naamruimte) en LimitRanges (standaardwaarden en grenzen per container). Samen voorkomen ze problemen door luidruchtige buren en houden ze gedeelde clusters stabiel: een belangrijke best practice voor productie.

Gratis beginnen

Leer De basis van Kubernetes met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Resourcequota's en limietbereiken” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad De basis van Kubernetes, waaronder “Resourcequota's en limietbereiken”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus De basis van Kubernetes bevat in totaal 4 lessen.

Wat leer ik in “Resourcequota's en limietbereiken”?

Voorkom problemen door luidruchtige buren en ontsporende workloads door ResourceQuotas op namespace-niveau en LimitRanges per Pod af te dwingen. Je oefent met De basis van Kubernetes door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met De basis van Kubernetes te beginnen?

Ervaring vooraf is niet nodig. De basis van Kubernetes op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “Resourcequota's en limietbereiken”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over De basis van Kubernetes?

Ja. Elke les over De basis van Kubernetes bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Veelvoorkomende problemen diagnosticeren
  2. Pods en Services debuggen
  3. Best practices en tips voor productie
  4. Resourcequota's en limietbereiken
← Terug naar De basis van Kubernetes