7 Häufige Kubernetes-Fallen (und wie ich lernte, sie zu vermeiden)
TL;DR Kubernetes kann eine leistungsstarke, aber auch herausfordernde Plattform sein. Eine häufige …
Die Kubernetes-Version v1.33 hat die Funktion des In-Place Pod Resizing in den Beta-Status überführt, was eine flexible Anpassung der Ressourcen für laufende Pods ermöglicht, ohne dass ein Neustart erforderlich ist. Dies verbessert die Ressourcennutzung und verringert die Störungen für stateful Anwendungen und sensible Workloads.
In Kubernetes v1.33 wurde die Funktion des In-Place Pod Resizing, die erstmals in v1.27 als Alpha eingeführt wurde, nun in den Beta-Status überführt und wird standardmäßig aktiviert sein. Diese Funktion ermöglicht es, die CPU- und Speicherkapazitäten von Containern innerhalb eines laufenden Pods zu ändern, ohne dass der Pod neu gestartet werden muss. Dies ist besonders vorteilhaft für stateful Anwendungen, batch jobs oder andere Workloads, die empfindlich auf Neustarts reagieren.
Das Konzept des In-Place Pod Resizing basiert darauf, dass das Feld spec.containers[*].resources in der Pod-Spezifikation die gewünschten Ressourcen darstellt und veränderbar ist. Das Feld status.containerStatuses[*].resources zeigt die tatsächlich konfigurierten Ressourcen eines laufenden Containers an. Um eine Größenänderung auszulösen, wird die Pod-Spezifikation über die neue resize-Subressource aktualisiert. Die Nutzung erfolgt über den Befehl kubectl edit pod <pod-name> --subresource resize.
Die Bedeutung des In-Place Pod Resizing liegt in mehreren Schlüsselvorteilen für die vertikale Skalierung. Es reduziert die Störungen, da Ressourcen für stateful Anwendungen und sensible Workloads angepasst werden können, ohne dass es zu Ausfallzeiten oder Verlust von Zuständen kommt. Zudem wird die Ressourcennutzung verbessert, da überprovisionierte Pods ohne Unterbrechung verkleinert werden können, während Pods, die unter hoher Last stehen, mehr Ressourcen zugewiesen bekommen, ohne neu gestartet werden zu müssen. Darüber hinaus ermöglicht es eine schnellere Anpassung an vorübergehende Ressourcenanforderungen, was insbesondere für Anwendungen wie Java von Vorteil ist, die während des Starts mehr CPU benötigen.
Die Änderungen zwischen der Alpha- und der Beta-Version umfassen mehrere Verbesserungen. Die Modifikation der Pod-Ressourcen muss nun über die resize-Subressource erfolgen. Der alte Statusfeld status.resize wurde abgeschafft und die Statusinformationen einer Größenänderung werden jetzt über zwei neue Pod-Bedingungen bereitgestellt: PodResizePending und PodResizeInProgress.
Zusätzlich wurde die Stabilität und Zuverlässigkeit der Funktion erheblich verbessert. Die Zuweisungslogik für Ressourcen im Kubelet wurde überarbeitet, was die Konsistenz und Robustheit erhöht hat. Ein neues System zur Verfolgung von “zugewiesenen” und “ausgeführten” Ressourcen wurde implementiert, um den Zustand von Größenänderungen auch bei Kubelet-Neustarts zuverlässig zu verwalten.
Die Integration mit dem Container Runtime Interface (CRI) wurde ebenfalls verbessert, indem ein neuer CRI-Aufruf UpdatePodSandboxResources hinzugefügt wurde, um Laufzeiten und Plugins besser über Pod-spezifische Ressourcenänderungen zu informieren.
Die Überführung des In-Place Pod Resizing in den Beta-Status stellt einen bedeutenden Fortschritt in der Flexibilität und Effizienz des Ressourcenmanagements in Kubernetes dar. Zukünftige Entwicklungen werden sich auf die weitere Stabilität und die Verbesserung der Nutzererfahrung konzentrieren.
Dieser Beitrag wurde automatisch aus dem englischsprachigen Original erstellt und auf Deutsch zusammengefasst. Wir bieten diesen Service an, um Sie bei der oft zerklüfteten und überwiegend englischsprachigen News-Situation im Bereich Cloud-Native Software, Souveräne Cloud, Kubernetes und Container-Technologien zeitnah auf Deutsch zu informieren.
TL;DR Kubernetes kann eine leistungsstarke, aber auch herausfordernde Plattform sein. Eine häufige …
TL;DR Kubernetes v1.34 führt eine neue Alpha-Funktion ein, die es Pods ermöglicht, den …
TL;DR Kubernetes v1.34 hat die Pod-Ersatzrichtlinie für Jobs in den Status “Allgemeine …