0
votes

Comment redémarrer 1000 de gousses à la fois

Nous avons des milliers de pods en cours d'exécution pour notre application. En raison de la raison pour laquelle nous devons redémarrer 100 de gousses.

Y a-t-il une façon de le faire dans Kubettes à l'aide de Kubectl ou de tout autre outil. S'il vous plaît conseil. Il devrait s'agir d'un nouveau redémarrage de pod.


4 commentaires

Qu'est-ce que Pure Pod redémarrez ?


Si c'est dans un espace de noms spécifique, puis via Kubectuel Supprimer PO --all, vous pouvez le faire, sinon vous devez écrire un script.


Quelle est la raison de redémarrer les pods?


Nous avons 1000 ans ... nous devons redémarrer 100 <- est-ce une faute de frappe, ou vous devez redémarrer uniquement sous-ensemble? ou tous? Ces pods ont-ils des sélecteurs uniques?


3 Réponses :


2
votes

une manière d'une manière xxx pré>

puis p> xxx pré>

une autre solution: p>

écrire un script qui: p>

  1. va acquérir une liste de tous les gousses actifs appartenant à un déploiement spécifique li>
  2. Numéro Kubectl Supprimer POD dans une boucle LI> OL>

    Encore une autre solution (fonctionne si vos gousses appartiennent à un espace de noms dédié 'FOO »): P>

    kubectl delete --all pods --namespace=foo
    


0 commentaires

1
votes

Si tous les pods appartiennent à un espace de noms spécifique, vous pouvez les supprimer tout avec Kubectuel Supprimer des pods --all --Namespace = FOO Pour les recréer (cela peut causer des temps d'arrêt).

Si tous les gousses sont contrôlées par le même déploiement, vous pouvez déclencher un redémarrage roulant avec Kubectl Rollout Départment Départ / nom de déploiement.

Modification de la valeur triviale de déploiement déclenchera également un Mise à jour (possible de temps d'arrêt) pour tous les pods contrôlés (par exemple, changer le TerminalisationGraceCeriodseconds à partir de 30 à 31 ).

Si les gousses sont de multiples déploiements différents, voici un script bash que « toutes les gousses » rafraîchit en Tous les déploiements par espace de noms.

Rollout redémarrage est uniquement disponible sur kubetestes v1.15 +


1 commentaires

Merci, votre suggestion a du sens. Je vais essayer cela.



0
votes

Vous pouvez le faire avec un sélecteur. Notez que cela supprime les pods afin que vous souhaitiez être sûr qu'ils fonctionnent avec une construction de niveau supérieur, comme un déploiement. Et assurez-vous que votre sélecteur ne correspond pas à des pods que vous ne voulez pas toucher.

kubectl delete pods -l name=myLabel


0 commentaires