1
votes

Comment modifier la politique de redémarrage du pod

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.


1 commentaires

Pouvez-vous s'il vous plaît joindre exactement votre commande d'édition kubectl et votre fichier yaml / json?


3 Réponses :


1
votes

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.


2 commentaires

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.



0
votes

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.


0 commentaires

0
votes

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.


0 commentaires