Speicher-Qualität im Kubernetes: So optimieren Sie Ihre Ressourcen

Entdecken Sie, wie Kubernetes v1.22 die Speicherverwaltung revolutioniert und welche Vorteile Memory QoS für Ihre Anwendungen bietet.

Meta: ayedo Redaktion · 29.11.2021 · ⏳ 2 Minuten · Alle Blogs →

Kubernetes v1.22, veröffentlicht im August 2021, bringt eine neue Alpha-Funktion mit sich, die die Art und Weise verbessert, wie Linux-Knoten Speicherressourcen verwalten. Diese Neuerung bedeutet insbesondere für Entwickler und DevOps-Teams einen großen Schritt nach vorn in der Verwaltung von Ressourcen.

Was ändert sich konkret für Entwickler/DevOps-Teams?

In früheren Versionen unterstützte Kubernetes keine Qualitätsgarantien für Speicher. Das bedeutete, dass es bei der Vergabe von Speicherressourcen zu Problemen kommen konnte, insbesondere wenn Container ihre Grenzen überschritten. Mit der Einführung von Memory QoS (Quality of Service) können Sie nun sicherstellen, dass wichtige Prozesse immer ausreichend Speicher zugewiesen bekommen.

Ein Beispiel für eine Pod-Konfiguration könnte so aussehen: yaml apiVersion: v1 kind: Pod metadata: name: example spec: containers:

  • name: nginx resources: requests: memory: “64Mi” cpu: “250m” limits: memory: “64Mi” cpu: “500m”

Hierbei sind spec.containers[].resources.requests und spec.containers[].resources.limits entscheidend für die Planung und Ausführung Ihrer Container. Während CPU als “komprimierbare” Ressource gilt, war das bei Speicher in cgroup v1 nicht der Fall. Übersteigt ein Container sein Speicherlimit, wird er vom Kernel mit einem OOM (Out of Memory) kill beendet.

Dank der neuen cgroup v2 bietet Kubernetes nun eine verbesserte Implementierung, die vollständigen Schutz für Speicherressourcen gewährleistet. Memory QoS nutzt den Speichercontroller von cgroup v2, um sicherzustellen, dass Ihre Pods immer über die benötigten Speicherressourcen verfügen.

Praktische Beispiele oder Anwendungsfälle

Wenn Sie memory.min auf die Speicheranfragen setzen, wird dieser Speicher reserviert und niemals vom Kernel zurückgefordert. Dies garantiert die Verfügbarkeit von Speicher für Ihre Kubernetes-Pods. Zudem wird mit memory.high die Speichernutzung gedrosselt, wenn Container ihre Grenzen erreichen, um zu verhindern, dass das System überlastet wird.

Hier ist eine Tabelle, die die Funktionen der beiden Parameter und deren Entsprechungen zu den Ressourcen von Kubernetes-Containern detailliert:

Datei Beschreibung
memory.min memory.min gibt die Mindestmenge an Speicher an, die der cgroup immer zur Verfügung stehen muss, d.h. Speicher, der niemals vom System zurückgefordert werden kann. Wenn die Speichernutzung der cgroup dieses Limit erreicht und nicht erhöht werden kann, wird der OOM-Killer des Systems aktiviert.

Wir ordnen es der Speichermenge des Containers zu
memory.high memory.high ist die Drosselgrenze für die Speichernutzung. Dies ist der Hauptmechanismus zur Steuerung der Speichernutzung einer cgroup. Wenn die Speichernutzung einer cgroup über die hier festgelegte Grenze hinausgeht, werden die Prozesse der cgroup gedrosselt und unter schweren Rückforderungsdruck gesetzt.
   </td>

Mit diesen neuen Funktionen in Kubernetes können Sie nicht nur die Zuverlässigkeit Ihrer Anwendungen erhöhen, sondern auch die Effizienz Ihrer Ressourcenverwaltung verbessern. ayedo ist stolz darauf, Partner in diesem innovativen Bereich der Kubernetes-Entwicklung zu sein und unterstützt Sie gerne bei der Implementierung dieser neuen Möglichkeiten.


Quelle: Kubernetes Blog

ayedo Alien Kubernetes Hat

Hosten Sie Ihre Apps bei ayedo

Profitieren Sie von skalierbarem App Hosting in Kubernetes, hochverfügbarem Ingress Loadbalancing und erstklassigem Support durch unser Plattform Team. Mit der ayedo Cloud können Sie sich wieder auf das konzentrieren, was Sie am besten können: Software entwickeln.

Jetzt ausprobieren →

Ähnliche Inhalte

Alle Blogs →



ayedo Redaktion · 06.07.2025 · ⏳ 2 Minuten

Herausforderungen und Lösungen: So meistern Sie Geräteausfälle in Kubernetes-Pods

Kubernetes ist der De-facto-Standard für die Container-Orchestrierung, aber wenn es um den Umgang mit spezialisierter Hardware wie GPUs und anderen Beschleunigern geht, wird es kompliziert. In diesem …

Lesen →

Herausforderungen und Lösungen: So meistern Sie Geräteausfälle in Kubernetes-Pods
Katrin Peter · 03.07.2025 · ⏳ 2 Minuten

Produkt-Update bei Loopback:

Lesen →

Produkt-Update bei Loopback:
Katrin Peter · 03.07.2025 · ⏳ 3 Minuten

Kubernetes als Schlüsseltechnologie für die OZG-Umsetzung im Saarland

Lesen →

Kubernetes als Schlüsseltechnologie für die OZG-Umsetzung im Saarland
ayedo Redaktion · 28.06.2025 · ⏳ 3 Minuten

Kompatibilität von Container-Images: Ein Schlüssel zur Zuverlässigkeit in Cloud-Umgebungen

In Branchen, in denen Systeme äußerst zuverlässig laufen müssen und strenge Leistungsanforderungen bestehen, wie beispielsweise in der Telekommunikation, Hochleistungs- oder KI-Computing, benötigen …

Lesen →

Kompatibilität von Container-Images: Ein Schlüssel zur Zuverlässigkeit in Cloud-Umgebungen
Katrin Peter · 17.06.2025 · ⏳ 3 Minuten

Kubernetes kann Freiheit - wenn man es richtig macht.

Lesen →

Kubernetes kann Freiheit - wenn man es richtig macht.

Interessiert an weiteren Inhalten? Hier gehts zu allen Blogs →


Noch Fragen? Melden Sie sich!

Unsere DevOps-Experten antworten in der Regel innerhalb einer Stunde.

Zu Gen-Z für E-Mail? Einfach mal Discord versuchen. Unter +49 800 000 3706 können Sie unter Angabe Ihrer Kontaktdaten auch einen Rückruf vereinbaren. Bitte beachten Sie, dass es keine Möglichkeit gibt, uns telefonisch direkt zu erreichen. Bitte gar nicht erst versuchen. Sollten Sie dennoch Interesse an synchroner Verfügbarkeit via Telefon haben, empfehlen wir Ihnen unseren Priority Support.