Comment changer la politique de redémarrage d'un pod en cours d'exécution de Toujours à Jamais . J'ai kubectl edit mais cela ne permet pas de le changer.
3 Réponses :
Une fois que vous avez créé le pod, kubernetes rend certaines propriétés immuables. Ce sont principalement les options qui peuvent modifier la stabilité des pods, par exemple ceci.
Vous pouvez obtenir le manifeste en utilisant kubectl get pod $ PODNAME -o yaml --export . Modifiez ensuite ce manifeste et modifiez le champ restartPolicy sur Never et redéployez-le.
Merci d'avoir posté. La solution la plus simple dans mon cas était de supprimer le déploiement associé au pod kubectl delete deployment
La suppression d'un déploiement entraînera une interruption du service, le remplacement des pods après l'application des correctifs du déploiement n'entraînera pas d'interruption de service.
Si vous avez des pods associés à deployemnt, modifiez-le en configurant la politique de redémarrage appropriée pour votre pod.
$ kubectl edit your_deployment_name
Enregistrez les modifications, supprimez l'ancien pod, le nouveau sera livré avec resartPolicy approprié.
Pour voir l'état du déploiement, exécutez:
$ kubectl rollout status your_deployment_name
En savoir plus ici: pods-restart-policy , déploiements .
La suppression du pod ne change rien si vous ne modifiez pas le manifeste de déploiement et ajoutez une politique de redémarrage appropriée.
Vous pouvez également supprimer tout le déploiement, modifier le fichier de configuration et le créer à partir de zéro.
Si kubectl edit ne vous permet pas de modifier la restartPolicy
Faites ceci,
kubectl delete déploiement
Modifiez le fichier yaml avec les nouvelles modifications.
Puis créez à nouveau le déploiement.
kubectl create -f deployment.yaml
Ou
Modifiez le fichier yaml avec les nouvelles modifications.
et appliquer les modifications au déploiement à l'aide de.
kubectl apply -f deployment.yaml
Cela supprimera l'ancien pod et créera un nouveau pod avec de nouvelles modifications.
Pouvez-vous s'il vous plaît joindre exactement votre commande d'édition kubectl et votre fichier yaml / json?