0Pricing
Kubernetes Basics · Lektion

Ressourcenkontingente und Limit Ranges

Verhindern Sie Probleme durch ressourcenintensive Nachbarn und außer Kontrolle geratene Workloads, indem Sie ResourceQuotas auf Namespace-Ebene und LimitRanges pro Pod durchsetzen.

Ressourcenkontingente und Limit Ranges ist eine kostenlose Kubernetes Basics-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kubernetes Basics-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kubernetes Basics-Kurs umfasst insgesamt 4 Lektionen.

Leitplanken für gemeinsam genutzte Cluster

In einem gemeinsam genutzten Cluster kann ein Team versehentlich alle Ressourcen verbrauchen. ResourceQuotas und LimitRanges dienen als Leitplanken, die für eine faire Verteilung zwischen Namespaces sorgen und Ausfälle verhindern.

Was ist eine ResourceQuota?

Eine ResourceQuota begrenzt die Gesamtressourcen, die ein Namespace verbrauchen darf: CPU, Arbeitsspeicher und die Anzahl von Objekten wie Pods oder Services.

Ein Compute-Kontingent

Dieses Kontingent begrenzt die Summe aller Requests und Limits für sämtliche Pods im 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

Kontingente für Objektanzahlen

Kontingente können auch begrenzen, wie viele Objekte jedes Typs vorhanden sein dürfen, und so ein unbeabsichtigtes Ausufern verhindern.

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

Die Regel zur Kontingentdurchsetzung

Wenn ein ResourceQuota für Compute-Ressourcen festgelegt ist, muss jeder Pod requests und limits angeben, andernfalls wird er abgelehnt. Das Kontingent kann Pods ohne Obergrenze nicht berücksichtigen.

Kontingentnutzung prüfen

Prüfen Sie jederzeit, wie viel eines Kontingents bereits genutzt wird.

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

Was ist ein LimitRange?

Ein LimitRange legt innerhalb eines Namespace Standardwerte und Grenzen pro Objekt fest. Dadurch sind einzelne Pods eingeschränkt, selbst wenn ein Entwickler keine Werte angibt.

Standardwerte und Grenzen

Ein LimitRange kann Standardwerte für requests/limits einsetzen und pro Container Mindest- und Höchstwerte durchsetzen.

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

Wie sie zusammenspielen

LimitRange ergänzt für jeden Container die Standardwerte; ResourceQuota summiert anschließend alles und vergleicht es mit dem Namespace-Limit. Zusammen sorgen sie sowohl für eine angemessene Größe einzelner Pods als auch für eine faire Gesamtnutzung des Namespace.

Ablehnungen beheben

Wenn ein Pod abgelehnt wird, nennt der Fehler die dafür verantwortliche Richtlinie. Lesen Sie ihn sorgfältig: Er zeigt, ob Sie das Kontingent überschritten oder eine Grenze des LimitRange verletzt haben.

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

Tipps für den Produktivbetrieb

  • Setzen Sie einen LimitRange, damit vergessene requests das Kontingent nicht beeinträchtigen
  • Dimensionieren Sie Kontingente anhand der tatsächlichen Nutzung und lassen Sie Spielraum für Spitzen
  • Prüfen Sie die Nutzung regelmäßig und passen Sie die Kontingente an, wenn die Teams wachsen

Kurze Überprüfung

Testen Sie Ihr Verständnis der Schutzmechanismen für Namespaces.

Zusammenfassung

Sie haben gelernt, mit ResourceQuotas (Namespace-weiten Limits für Compute-Ressourcen und Objektanzahlen) und LimitRanges (Standardwerten und Grenzen pro Container) für eine faire Ressourcennutzung zu sorgen. Zusammen verhindern sie Probleme durch einzelne übermäßig ressourcenintensive Nutzer und halten gemeinsam genutzte Cluster stabil – eine zentrale Best Practice für den Produktivbetrieb.

Häufig gestellte Fragen

Ist die Lektion „Ressourcenkontingente und Limit Ranges“ kostenlos?

Ja — der vollständige Text von „Ressourcenkontingente und Limit Ranges“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kubernetes Basics-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kubernetes Basics-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Ressourcenkontingente und Limit Ranges“?

Verhindern Sie Probleme durch ressourcenintensive Nachbarn und außer Kontrolle geratene Workloads, indem Sie ResourceQuotas auf Namespace-Ebene und LimitRanges pro Pod durchsetzen. Du übst Kubernetes Basics mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Kubernetes Basics zu starten?

Keine Vorkenntnisse erforderlich. Kubernetes Basics auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Ressourcenkontingente und Limit Ranges“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Kubernetes Basics-Lektion Code schreiben und ausführen?

Ja. Jede Kubernetes Basics-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Häufige Probleme diagnostizieren
  2. Pods und Services debuggen
  3. Best Practices und Tipps für die Produktion
  4. Ressourcenkontingente und Limit Ranges
← Zurück zu Kubernetes Basics