Kubernetes 1.37 stabilise son API de métriques et réduit l'empreinte mémoire d'etcd
La version 1.37 de Kubernetes apporte des améliorations concrètes pour la stabilité et les performances du plan de contrôle. Entre la stabilisation de l'API de métriques de ressources et l'arrivée de RangeStream pour etcd, les clusters à forte charge gagnent en efficacité. Voici les changements marquants de cette release.
Fil « Optimisation de la mémoire dans Kubernetes 1.37 avec etcd RangeStream »
Réduction de la mémoire sur les grandes requêtes
L'une des évolutions majeures de Kubernetes 1.37 est l'arrivée en version bêta de etcd RangeStream, conçu pour fonctionner conjointement avec etcd v3.7 (la base de données clé/valeur distribuée qui stocke l'état du cluster). Jusqu'à présent, la lecture de très grandes collections d'objets via des requêtes LIST pouvait provoquer des pics de consommation mémoire massifs sur etcd et sur le serveur d'API (kube-apiserver, le composant central gérant les requêtes REST).
En diffusant les résultats de manière progressive au lieu de tout charger en mémoire en une seule fois, etcd RangeStream réduit la consommation mémoire globale et rend l'utilisation des ressources du plan de contrôle (control plane) beaucoup plus prévisible lors des lectures volumineuses.
L'API metrics.k8s.io passe en version stable
Autre étape importante : l'API metrics.k8s.io passe officiellement en version stable (v1). Il s'agit de l'API de référence fournissant les métriques basiques de consommation de processeur (CPU) et de mémoire pour les nœuds et les conteneurs (Pods).
# Cette commande repose directement sur l'API metrics.k8s.io désormais stable
kubectl top pods -n production
Cette API est indispensable pour le fonctionnement quotidien des équipes d'ingénierie : c'est elle qui alimente la commande kubectl top ainsi que l'HPA (Horizontal Pod Autoscaler, le composant qui ajuste automatiquement le nombre d'instances d'une application en fonction de la charge).
Migration de stockage et évolutions réseau
La release 1.37 apporte d'autres finalisations majeures pour les exploitants de plateformes :
- Storage Version Migration (SVM) passe en disponibilité générale (GA) via l'API
storagemigration.k8s.io/v1. Cette fonctionnalité intégrée au plan de contrôle automatise la migration des ressources stockées dans etcd vers leur version d'API préférée lors des mises à jour. - Gateway API v1.6 fait passer les routes TCPRoute et UDPRoute au statut Standard. Ce standard de gestion du trafic réseau, qui remplace progressivement les objets Ingress, gère désormais de manière mature les protocoles de couche transport non-HTTP.