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 · 08.06.2025 · ⏳ 3 Minuten

Neue Wege im KI-Management: Die Gateway API Inference Extension

Moderne generative KI- und große Sprachmodelle (LLMs) stellen Kubernetes vor einzigartige Herausforderungen im Datenverkehrsmanagement. Im Gegensatz zu typischen kurzlebigen, zustandslosen Webanfragen …

Lesen →

Neue Wege im KI-Management: Die Gateway API Inference Extension
ayedo Redaktion · 06.06.2025 · ⏳ 2 Minuten

Wie Sie sicherstellen, dass Ihr Sidecar-Container zuerst startet

Einführung in die Verwaltung von Sidecar-Containern in Kubernetes In der Welt von Kubernetes sind Sidecar-Container nützliche Helfer, die Funktionen erweitern oder zusätzliche Aufgaben für die …

Lesen →

Wie Sie sicherstellen, dass Ihr Sidecar-Container zuerst startet
ayedo Redaktion · 05.06.2025 · ⏳ 2 Minuten

Gateway API v1.3.0: Neue Funktionen für flexibles Request Mirroring und mehr!

Wir freuen uns, die allgemeine Verfügbarkeit der Gateway API v1.3.0 bekanntzugeben! Diese Version wurde am 24. April 2025 veröffentlicht und bringt spannende neue Funktionen mit sich. Was ändert sich …

Lesen →

Gateway API v1.3.0: Neue Funktionen für flexibles Request Mirroring und mehr!
Katrin Peter · 03.06.2025 · ⏳ 2 Minuten

Application Performance sollte messbar sein — jederzeit, in Echtzeit

Wer Anwendungen produktiv betreibt, braucht keine schönen Dashboards, sondern harte Daten. Performance-Probleme entstehen nie dann, wenn Zeit für Debugging ist. Sie kommen genau dann, wenn Systeme …

Lesen →

Application Performance sollte messbar sein — jederzeit, in Echtzeit
Katrin Peter · 03.06.2025 · ⏳ 2 Minuten

Warum betreibt ihr eure App eigentlich noch selbst?

Die Frage stellt sich immer wieder. Entwicklerteams liefern Features, optimieren Releases, bauen saubere Architekturen — und dann hängen sie trotzdem noch in der Infrastruktur. Kubernetes-Cluster …

Lesen →

Warum betreibt ihr eure App eigentlich noch selbst?

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.