3min Devops

Kubernetes-update maakt platform eenvoudiger op te schalen

Kubernetes-update maakt platform eenvoudiger op te schalen

Het Technical Oversight Committee (TOC) voor Kubernetes heeft een update uitgebracht met de codenaam Penelope. Deze update verbetert de dynamische toewijzing van bronnen (DRA) en maakt bovendien een einde aan de eerdere methode die werd gebruikt voor het schalen van clusters.

Frederico Muñoz, releaseleider van Kubernetes 1.32 en cloudarchitect bij SAS Institute, verklaarde dat de DRA-functionaliteit, die nu beschikbaar is in bèta, het eenvoudiger maakt om workloads dynamisch te schalen. Dit zonder Kubernetes-clusters opnieuw te hoeven starten. Bovendien wordt het gebruik van een plug-in van derden voor dat proces overbodig. DRA is nu een native Kubernetes-functie.

Gespecialiseerde hardware

Deze mogelijkheid zal volgens Muñoz vooral cruciaal blijken naarmate meer gespecialiseerde hardware, zoals grafische processors (GPU’s), field-programmable gate arrays (FPGA’s) en netwerkadapters, aan clusters wordt toegevoegd.

Het doel is om de eerdere DRA-aanpak, geïntroduceerd in Kubernetes 1.26, te vervangen door een efficiëntere verticale en horizontale schaaloplossing. In totaal bevat deze release 44 verbeteringen, waarvan 13 stabiel zijn verklaard, 12 in bèta zijn gegaan, en 19 als alfafunctionaliteiten worden getest.

Nieuwe stabiele functies

Mogelijkheden die nu stabiel genoeg zijn om in productieomgevingen te gebruiken, zijn onder meer ondersteuning voor veldkiezers voor klantresources die nu de functionaliteit van andere Kubernetes-objecten weerspiegelen; een mogelijkheid om door geheugen ondersteunde volumes dynamisch te vergroten op basis van Pod-bronlimieten; opname van de knooppuntnaam in het serviceaccounttoken; ondersteuning voor meerdere autorisaties van de API-server (Application Programming Interface); en een mogelijkheid om PersistentVolumeClaims (PVC’s) gemaakt door StatefulSets automatisch te verwijderen.

Bèta-functionaliteiten

Tot de bestaande functies die nu beschikbaar zijn in de bètaversie behoren een API voor het beheren van taaksynchronisatie; een mogelijkheid om te specificeren welke eindpunten anonieme verzoeken mogen doen; een functie die nauwkeurigere wachtrijen mogelijk maakt met behulp van kube-scheduler; eenvoudiger herstel na een mislukte volume-uitbreiding; de toevoeging van een VolumeGroupSnapshot API; en de mogelijkheid om label- en veldselectors te gebruiken om toegang tot knooppunten en pods te autoriseren.

Alfafuncties in testfase

Nieuwe alfafuncties die worden getest, zijn onder meer een asynchrone preemption-mogelijkheid voor Kubernetes Scheduler; ondersteuning voor het muteren van toegang om het definiëren van gedetailleerder beleid eenvoudiger te maken met behulp van de Common Expression Language (CEL); de mogelijkheid om resourceverzoeken en -limieten op podniveau in te stellen; een mogelijkheid om een ​​slaapduur van nul seconden in te stellen voor de PreStop-levenscyclushaak in Kubernetes; een standaardinterface voor netwerkgegevens; tools om eindpunten beter te debuggen; en meer elegante afsluitingen van het Kubernetes-cluster dat op Windows-servers draait.

Beperkt aantal herstarts

Ten slotte is de API-versie van FlowSchema en PriorityLevelConfiguration flowcontrol.apiserver.k8s.io/v1beta3 verwijderd ten gunste van een nieuwe API-implementatie. Bovendien is het nu mogelijk om de kubelet opnieuw op te starten wanneer de statuscontrole mislukt, dankzij een systeemwatchdogfunctie. Tegelijkertijd wordt het maximale aantal herstarts binnen een bepaalde tijdsperiode beperkt.

Elke organisatie zal zelf moeten bepalen wanneer een upgrade naar Kubernetes 1.32 zinvol is. Sommigen wachten wellicht tot hun Kubernetes-distributieprovider ondersteuning toevoegt.