Quelle est la bonne façon de libérer des ressources Kubernetes pour un emploi de Kubernetes qui ne réussit pas tirer l'image?

voix
0

Le contexte

Nous avons longtemps l'exécution des travaux de Kubernetes en fonction des conteneurs docker. Les conteneurs a besoin de ressources (mémoire de 15 Go, 2 cpu) et nous utilisons autoscaler à l'échelle de nouveaux nœuds de travailleurs à la demande.

Scénario

Les utilisateurs peuvent sélectionner la version de l'image docker à utiliser pour un emploi, par exemple 1.0.0, 1.1.0, ou même un commit hachage du code de l'image a été construit à partir dans un environnement de test.

Alors que nous quittons la balise docker à FreeText, l'utilisateur peut saisir une balise docker non existante. En raison de ce pod d'emploi est dans l'état ImagePullBackOff. La nacelle reste dans cet état et maintient les ressources verrouillées afin qu'ils ne peuvent pas être réutilisés par tout autre emploi.

Question

Quelle est la bonne solution, qui peut être appliqué dans Kubernetes lui-même, pour ne pas la nacelle immédiatement ou au moins rapidement si une traction échoue en raison d'une image docker non existant: tag?

possibilités

Je regardais dans backofflimit. Je l'ai mis à 0, mais cela ne manque pas ou supprimer le travail. Les ressources sont bien sûr conservées aussi bien.

Peut-être qu'ils peuvent être tués par une tâche cron. Je ne sais pas comment le faire.

Idéalement, les ressources ne devraient même pas être affectés à un emploi avec une image de docker unexisting. Mais je ne sais pas s'il est possible d'atteindre facilement ce.

Tout autre?

Créé 24/10/2019 à 12:53
source utilisateur
Dans d'autres langues...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more