web-dev-qa-db-fra.com

Les pods Kubernetes échouant dans "Le bac à sable du pod a été modifié, il sera tué et recréé"

Sur un cluster Google Container Engine (GKE), je vois parfois un pod (ou plus) ne démarrant pas et regardant dans ses événements, je peux voir ce qui suit:

Le bac à sable du pod a changé, il sera tué et recréé.

Si j'attends, cela ne cesse de réessayer.
Si je supprime le module et le permets de le recréer avec le jeu de réplicas du déploiement, il démarrera correctement.

Le comportement est incohérent.

Kubernetes versions 1.7.6 et 1.7.8

Des idées?

6
Eldad AK

Je peux voir le message suivant posté dans Tableau de bord d'état de Google Cloud :

"Nous étudions actuellement un problème affectant les clusters GKE (Google Container Engine). Après la fermeture ou le redémarrage du docker sur un nœud, les pods ne peuvent pas être planifiés.

On pense que le problème affecte tous les clusters GKE exécutant Kubernetes v1.6.11, v1.7.8 et v1.8.1.

Notre équipe d'ingénierie suggère: Si les noeuds sont dans la version 1.6.11, veuillez rétrograder vos noeuds vers la v1.6.10. Si les noeuds sont sur la version 1.7.8, veuillez rétrograder vos noeuds vers la version 1.7.6. Si les nœuds sont sur la version 1.8.1, veuillez rétrograder vos nœuds vers la version 1.7.6.

L'équipe d'ingénierie de ce document . Fournit également des solutions de rechange. Ces solutions de contournement s’appliquent aux clients qui ne peuvent pas rétrograder leurs nœuds. "

7
Carlos

J'ai été affecté par le même problème sur un nœud du cluster GKE 1.8.1 (les autres nœuds étaient bien). J'ai fait suite à:

  1. Assurez-vous que votre pool de noeuds dispose d'une marge de sécurité suffisante pour recevoir tous les pods planifiés sur le noeud affecté. En cas de doute, augmentez le pool de nœuds de 1.
  2. Égouttez le noeud affecté en suivant ce manuel :

    kubectl drain <node>
    

    Vous pouvez recevoir des avertissements sur les daemonsets ou les pods avec stockage local, puis poursuivre l'opération.

  3. Mettez le noeud affecté hors tension dans Compute Engine. GKE doit planifier le remplacement du noeud si la taille de votre pool est inférieure à celle spécifiée dans la description du pool.