Introduction au dépannage

Si vous rencontrez des difficultés avec Config Sync, cette page vous présente certains outils et procédures courants qui peuvent vous aider à identifier et à résoudre les problèmes que vous rencontrez.

Passer à une version compatible

Envisagez de mettre à niveau Config Sync vers une version compatible. La mise à niveau résout souvent les problèmes courants et vous donne accès aux fonctionnalités les plus récentes. Pour vous assurer de toujours disposer d'une version compatible, vous pouvez activer la mise à niveau automatique (Preview).

Utiliser l'outil de ligne de commande nomos

L'outil de ligne de commande nomos fournit des insights essentiels sur votre configuration Config Sync. Les commandes décrites dans les sections suivantes sont particulièrement utiles lorsque vous essayez de déterminer la source d'un problème ou lorsque vous devez faire appel à Cloud Customer Care.

Afficher l'état de Config Sync

La commande nomos status vous fournit des données agrégées et des erreurs pour vous aider à comprendre ce qu'il se passe avec votre installation de Config Sync. Les informations suivantes sont disponibles avec nomos status:

  • État de l'installation par cluster
  • Erreurs de synchronisation (lecture à partir de Git et rapprochement des modifications)

Créer un rapport de bug

Si vous rencontrez un problème avec Config Sync qui nécessite l'aide de Cloud Customer Care, vous pouvez lui fournir de précieuses informations de débogage à l'aide de la commande nomos bugreport.

Cette commande génère un fichier ZIP horodaté contenant des informations sur le cluster Kubernetes défini dans votre contexte kubectl. Le fichier contient également des journaux issus des pods Config Sync. Il ne contient pas d'informations provenant des ressources synchronisées avec Config Sync.

Afficher le tableau de bord "Vue d'ensemble"

Le tableau de bord Config Sync vous offre un aperçu de l'état des packages gérés par Config Sync et de l'état des ressources qu'ils contiennent. L'exploration de ce tableau de bord peut vous aider à obtenir un aperçu rapide de l'état de votre installation de Config Sync et à identifier les packages présentant des problèmes.

  • Pour accéder au tableau de bord, dans la console Google Cloud, accédez à la page Configuration de la section Fonctionnalités:

    Accéder à Config

Utiliser la surveillance et l'analyse des journaux

Surveiller Config Sync et explorer ses journaux peut vous aider à déterminer la source des bugs et à mieux comprendre tout comportement inattendu.

Comprendre les métriques Config Sync

Utilisez les métriques Config Sync pour gagner en visibilité sur l'état de Config Sync.

Surveiller les objets RootSync et RepoSync

Lorsque vous installez Config Sync à l'aide de la console Google Cloud ou de Google Cloud CLI, Config Sync crée automatiquement un objet RootSync. Lorsque vous configurez la synchronisation à partir de plusieurs dépôts, vous pouvez créer des objets RepoSync contenant des informations de configuration sur vos dépôts d'espaces de noms.

La surveillance de ces objets peut révéler des informations précieuses sur l'état de Config Sync. Pour en savoir plus, consultez la section Surveiller les objets RootSync et RepoSync.

Utiliser des indicateurs de niveau de service (SLI)

Pour recevoir des notifications lorsque Config Sync ne fonctionne pas comme prévu, utilisez les SLI Config Sync.

Journaux de requête

Vous pouvez utiliser l'explorateur de journaux pour récupérer, afficher et analyser les données de journaux pour Config Sync. Ces journaux peuvent contenir des données historiques précieuses qui ne sont pas capturées par nomos bugreport lorsque les pods de l'opérateur ou du rapprochement sont redémarrés. Pour obtenir des exemples de requêtes susceptibles de vous aider à diagnostiquer votre problème, consultez la section Journaux de Config Sync pour interroger les données.

Examiner les ressources à l'aide de l'outil de ligne de commande kubectl

Config Sync est composé de plusieurs ressources personnalisées que vous pouvez interroger à l'aide des commandes kubectl. Ces commandes vous aident à comprendre l'état de chacun des objets de Config Sync.

Vous devez connaître les informations suivantes sur les ressources Kubernetes gérées par Config Sync:

  • config-management-system est l'espace de noms que nous utilisons pour exécuter tous les composants système principaux de Config Sync.
  • configmanagement.gke.io et configsync.gke.io sont les groupes d'API que nous utilisons pour toutes les ressources personnalisées.

Examples

Les sections suivantes vous expliquent comment utiliser les commandes kubectl pour examiner Config Sync.

Lister les ressources personnalisées

  • Vous pouvez obtenir la liste complète des ressources personnalisées en exécutant la commande suivante:

    kubectl api-resources | grep -E "configmanagement.gke.io|configsync.gke.io"
    
  • Vous pouvez utiliser des ressources personnalisées individuelles en exécutant la commande suivante:

    kubectl get RESOURCE -o yaml.
    

    Remplacez RESOURCE par le nom de la ressource que vous souhaitez interroger.

    Par exemple, la sortie de la commande suivante vous permet de vérifier l'état d'un objet RootSync:

    kubectl get rootsync -n config-management-system -o yaml
    

Vérifier l'annotation token d'un objet

Vous pouvez savoir quand un objet Kubernetes géré a été mis à jour pour la dernière fois par Config Sync. Chaque objet géré est annoté avec le hachage du commit Git lors de sa dernière modification, ainsi que le chemin d'accès à la configuration contenant la modification.

Par exemple, pour obtenir l'annotation d'un ClusterRoleBinding nommé namespace-readers, exécutez la commande suivante:

kubectl get clusterrolebinding namespace-readers

Le résultat ressemble à ce qui suit :

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  annotations:
    configmanagement.gke.io/source-path: cluster/namespace-reader-clusterrolebinding.yaml
    configmanagement.gke.io/token: bbb6a1e2f3db692b17201da028daff0d38797771
  name: namespace-readers
...

Pour en savoir plus, consultez la section Libellés et annotations.

Lire la documentation supplémentaire sur le dépannage

Si le problème persiste, les ressources suivantes peuvent vous être utiles:

  • Si vous avez reçu un message d'erreur, consultez la documentation de référence sur l'erreur pour obtenir des conseils sur la résolution de l'erreur.

  • Vérifiez si le problème que vous rencontrez est dû à un problème connu.

  • Si vous rencontrez des difficultés dans un domaine spécifique, l'un des guides de dépannage ciblés répertoriés dans la section Résoudre les problèmes par type de la table des matières peut vous aider.

Étapes suivantes