Kubernetes v1.34 : La politique de remplacement des pods pour les Jobs passe en GA
La fonctionnalité de politique de remplacement des Pods pour les Jobs Kubernetes est désormais disponible en version générale. Par défaut, les Jobs remplacent immédiatement les Pods en cours de terminaison ou ayant échoué, ce qui peut potentiellement dépasser le parallélisme. Cela peut causer des problèmes pour les applications qui attendent des instances uniques par index, comme certains frameworks d'apprentissage automatique. Cela peut également entraîner des retards de planification, une mise à l'échelle inutile et des contournements temporaires des quotas. La nouvelle fonctionnalité permet aux utilisateurs de contrôler ce comportement avec le champ .spec.podReplacementPolicy. La politique TerminatingOrFailed, qui est la valeur par défaut, recrée les Pods dès qu'ils commencent à se terminer. La politique Failed, cependant, ne crée un nouveau Pod qu'après que l'ancien se soit complètement terminé et soit passé à la phase Failed. Pour les Jobs avec une politique d'échec de Pod, la politique de remplacement Failed est obligatoire. L'état des Pods en cours de terminaison peut être vérifié en utilisant kubectl get job myjob -o=jsonpath='{.status.terminating}'. Un exemple montre comment la définition de la politique sur Failed empêche le démarrage d'un nouveau Pod tant que le Pod en cours de terminaison n'est pas complètement terminé. Cette amélioration vise à fournir un contrôle plus robuste sur la gestion du cycle de vie des Pods des Jobs.
.spec.podReplacementPolicy. La politiqueTerminatingOrFailed, qui est la valeur par défaut, recrée les Pods dès qu'ils commencent à se terminer. La politiqueFailed, cependant, ne crée un nouveau Pod qu'après que l'ancien se soit complètement terminé et soit passé à la phaseFailed. Pour les Jobs avec une politique d'échec de Pod, la politique de remplacementFailedest obligatoire. L'état des Pods en cours de terminaison peut être vérifié en utilisantkubectl get job myjob -o=jsonpath='{.status.terminating}'. Un exemple montre comment la définition de la politique surFailedempêche le démarrage d'un nouveau Pod tant que le Pod en cours de terminaison n'est pas complètement terminé. Cette amélioration vise à fournir un contrôle plus robuste sur la gestion du cycle de vie des Pods des Jobs.