Déboguer les problèmes de nœuds

Cette page explique comment déboguer les problèmes de nœuds sur Google Distributed Cloud à l'aide d'une suite d'outils de débogage préinstallés.

Si vous avez besoin d'aide supplémentaire, contactez l'assistance Cloud Customer Care.

Présentation

Chaque cluster GKE sur VMware que vous créez est composé de plusieurs nœuds. Chaque nœud inclut une distribution de CoreOS toolbox, un script shell qui décompresse et exécute un conteneur de débogage, debug-toolbox. debug-toolbox est une image de conteneur qui inclut plusieurs tools de débogage utiles.

Si vous rencontrez des problèmes avec un nœud spécifique, essayez de déboguer en procédant comme suit : connectez-vous au nœud concerné, exécutez le script toolbox pour décompresser et exécuter le conteneur debug-toolbox, puis exécutez les outils inclus dans le conteneur.

Outils inclus dans le conteneur debug-toolbox

Le conteneur debug-toolbox exécute une image de base Debian qui inclut les packages suivants :

  • bash
  • curl
  • dnsutils
  • hping3
  • iperf3
  • lsof
  • netcat
  • mtr
  • procps
  • strace
  • tcpdump
  • traceroute
  • util-linux

Ces outils étant inclus dans le conteneur, vous n'avez pas besoin d'une connexion Internet. Si vous souhaitez installer des outils de débogage supplémentaires, utilisez apt-get, qui nécessite une connexion Internet.

Utiliser un fichier de cookie (toolbox)

  1. Connectez-vous en SSH au nœud du cluster.

  2. Exécutez la commande toolbox :

    sudo toolbox

    Cette commande démarre un conteneur debug-toolbox.

  3. Depuis le conteneur, exécutez l'un des tools. Exemple : tcpdump.

  4. Lorsque vous avez terminé, quittez le conteneur et fermez la connexion SSH au nœud.

Détecteur de problème de nœud

À compter de la version 1.4 de GKE sur VMware, le détecteur de problèmes de nœuds, qui est activé pour tous les nœuds d'un cluster, permet de détecter rapidement certains problèmes courants. Le détecteur de problèmes de nœuds vérifie toujours les problèmes possibles et signale les mêmes que les événements et conditions sur le nœud. Si un nœud présente un problème, vous pouvez vérifier si le détecteur a détecté le problème en exécutant kubectl describe sur le nœud, et en recherchant les événements et conditions correspondants.

Le détecteur de problèmes de nœuds génère plusieurs conditions sur le nœud. Si la condition signalée est KubeletUnhealthy ou ContainerRuntimeUnhealthy, un redémarrage du service systemd correspondant (kubelet ou Docker) peut aider à rendre à nouveau le nœud sain.

À partir de la version 1.5 de Google Distributed Cloud, la réparation automatique du service systemd et kubelet est activée dans le détecteur de problèmes de nœuds. Si le détecteur de problèmes de nœuds détecte une condition KubeletUnhealthy ou ContainerRuntimeUnhealthy sur le nœud, il tente de redémarrer automatiquement le service kubelet ou Docker si la durée écoulée depuis le dernier redémarrage est supérieure à un certain seuil.

Étapes suivantes

Si vous avez besoin d'une aide supplémentaire, contactez Cloud Customer Care.