Dépannage des problèmes de configuration de réseau pour les grappes Kubernetes à l'aide de tests d'analyse de chemins de réseau

Découvrez comment utiliser les tests d'analyse des chemins réseau pour vous aider à résoudre les problèmes de connectivité réseau avec les grappes que vous avez créées à l'aide de Kubernetes Engine (OKE).

Pour qu'une grappe que vous créez avec Kubernetes Engine fonctionne correctement, les ressources de réseau spécifiées pour la grappe doivent être configurées de manière appropriée. Lorsque vous créez une grappe à l'aide du flux de travail Création rapide, Kubernetes Engine crée et configure de nouvelles ressources de réseau pour vous, conformément aux directives décrites dans Configuration des ressources de réseau pour la création et le déploiement de grappes. Toutefois, lorsque vous créez une grappe à l'aide du flux de travail de création personnalisée, vous spécifiez les ressources de réseau existantes pour la nouvelle grappe à utiliser. Ces ressources doivent être configurées de manière appropriée pour permettre la communication réseau avec le cluster et pour permettre à différents composants du cluster de communiquer entre eux.

La configuration des ressources de réseau pour les grappes Kubernetes peut devenir compliquée. Le moteur Kubernetes fournit donc un certain nombre de tests d'analyse de chemins réseau prédéfinis pour résoudre les problèmes de configuration du réseau. Ces tests d'analyse de chemins examinent les topologies de réseau virtuel, parcourent plusieurs tables de routage et scrutent les règles de sécurité dans les groupes de sécurité de réseau et les listes de sécurité. Aucun trafic réel n'est envoyé, mais la configuration est examinée et utilisée pour confirmer l'accessibilité.

À l'aide des tests d'analyse de chemin, vous pouvez déterminer si une ressource OCI peut atteindre une autre ressource OCI (connectivité unidirectionnelle de la source à la destination) et si deux ressources OCI peuvent se joindre l'une à l'autre (connectivité bidirectionnelle). Par exemple, vous pouvez utiliser un test d'analyse de chemin pour déterminer si un pod d'une grappe Kubernetes qui utilise le plugiciel CNI de réseau de pods natif de VCN peut atteindre les services OCI, et vice versa.

Lorsque vous utilisez la console, vous pouvez sélectionner les tests d'analyse de chemin prédéfinis dans l'onglet Tests d'analyse de chemin de la page des détails de la grappe. Pour plus d'informations sur les tests d'analyse de chemin prédéfinis disponibles, voir Tests d'analyse de chemin prédéfinis.

Chaque test d'analyse de chemin prédéfini nécessite un certain nombre de paramètres de test différents. Lorsque vous exécutez un test, selon le test que vous sélectionnez, les valeurs par défaut de certains ou de tous les paramètres de test sont dérivées des propriétés des ressources utilisées par le cluster. Dans certains cas, vous pouvez modifier les valeurs par défaut. Vous devez fournir des valeurs pour les paramètres de test qui n'ont pas de valeurs par défaut. Après avoir exécuté un test d'analyse de chemin prédéfini, vous pouvez enregistrer les résultats en tant que fichier JSON, ce qui vous permet de comparer les résultats du test au fil du temps. Pour plus d'informations sur l'exécution de tests d'analyse de chemins prédéfinis pour une grappe, voir Exécution de tests d'analyse de chemins prédéfinis.

Les tests d'analyse de chemin sont alimentés par Oracle Cloud Infrastructure Network Path Analyzer (NPA), qui identifie les problèmes de configuration du réseau virtuel ayant une incidence sur la connectivité. En plus des tests d'analyse de chemin prédéfinis disponibles dans l'onglet Tests d'analyse de chemin, vous pouvez également créer vos propres tests d'analyse de chemin personnalisés à l'aide de NPA. Pour plus d'informations sur NPA, y compris les autorisations requises pour exécuter NPA, et comment créer et exécuter des tests d'analyse de chemin avec NPA, voir Analyseur de chemin de réseau.

Politiques IAM requises pour exécuter les tests d'analyse de chemin

Pour exécuter des tests d'analyse de chemin afin de vérifier les chemins réseau d'une grappe Kubernetes que vous avez créée à l'aide du moteur Kubernetes, vous devez appartenir à un groupe qui a reçu l'autorisation d'utiliser l'analyseur de chemin réseau (NPA). L'analyseur de chemin de réseau doit également avoir l'autorisation d'accéder à diverses ressources de réseau.

Pour connaître les autorisations d'octroi et une politique IAM recommandée, voir Autorisations requises dans la documentation sur l'analyseur de chemins réseau.

Tests d'analyse de chemins prédéfinis

Vous pouvez utiliser différents tests d'analyse de chemins prédéfinis pour vérifier les chemins réseau d'une grappe Kubernetes que vous avez créée à l'aide de Kubernetes Engine. Dans la console, vous pouvez filtrer la liste des tests d'analyse de chemin par :

  • le type de problème à vérifier (par exemple, défaillances de DNS, défaillances de plan de contrôle Kubernetes, échec de l'enregistrement des noeuds)
  • chemins essentiels, recommandés ou facultatifs pour le bon fonctionnement de Kubernetes Engine

Les tests sont regroupés dans les grandes catégories d'essais suivantes :

  • Tests d'API de grappe : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre au point d'extrémité de l'API Kubernetes de la grappe de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
  • Tests de noeud : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre aux noeuds de travail du plan de données Kubernetes de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
  • Tests de pod : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre aux pods du plan de données Kubernetes de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
  • Tests de l'équilibreur de charge : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre à un équilibreur de charge OCI ou à un équilibreur de charge de réseau de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.

Les composants de grappe utilisent des chemins différents pour communiquer avec d'autres composants de grappe et emplacements de réseau, selon le type de réseau de la grappe (surcouche de canal ou VCN natif) et le type de noeud de travail que contient la grappe (géré et/ou virtuel). Dans chaque catégorie de test, il existe différents tests d'analyse de chemin pour vérifier ces différents chemins.

Notez que la console affiche uniquement les tests d'analyse de chemin qui s'appliquent à la grappe courante. Par exemple, si le type de réseau de la grappe est Superposition Flanelle, vous pouvez uniquement sélectionner des tests d'analyse de chemin qui s'appliquent au type de réseau Superposition Flanelle.

Exécution de tests d'analyse de chemins prédéfinis

Vous utilisez la console pour exécuter des tests d'analyse de chemins prédéfinis afin de vérifier les chemins réseau d'une grappe Kubernetes que vous avez créée à l'aide de Kubernetes Engine.

Utilisation de la console

  1. Dans la page de liste Grappes, sélectionnez le nom de la grappe pour laquelle vous voulez exécuter un test d'analyse de chemin de réseau prédéfini. Si vous avez besoin d'aide pour trouver la page de liste ou la grappe, voir Liste des grappes.
  2. Sélectionnez l'onglet Tests d'analyse de chemin.
    Les tests d'analyse de chemin prédéfinis sont regroupés dans les grandes catégories suivantes, présentées dans différents onglets de catégorie de test :
    • Tests d'API de grappe : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre au point d'extrémité de l'API Kubernetes de la grappe de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
    • Tests de noeud : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre aux noeuds de travail du plan de données Kubernetes de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
    • Tests de pods : À utiliser pour vérifier qu'un ou plusieurs chemins sont disponibles pour permettre aux pods du plan de données Kubernetes de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
    • Tests de l'équilibreur de charge : Permet de vérifier qu'un ou plusieurs chemins sont disponibles pour permettre à un équilibreur de charge OCI ou à un équilibreur de charge de réseau de communiquer de manière bidirectionnelle avec d'autres composants de grappe et emplacements de réseau.
  3. (Facultatif) Sous Type de problème à vérifier, spécifiez les tests d'analyse de chemin affichés dans les onglets de catégorie de test en sélectionnant le type de problème à vérifier :
    • Tout problème
    • Échecs DNS
    • Échecs de plan de contrôle Kubernetes
    • Noeuds sans enregistrement
  4. (Facultatif) Sous Filtres, réduisez ou développez le nombre de tests d'analyse de chemin affichés dans les onglets de catégorie de test en sélectionnant ou en désélectionnant une ou plusieurs des options OKE requis, comme suit :
    • Oui : Affiche les tests d'analyse de chemin qui vérifient les chemins essentiels qui doivent être disponibles pour que le moteur Kubernetes fonctionne correctement.
    • Recommandé : Affiche les tests d'analyse de chemin qui vérifient les chemins recommandés (mais non requis) pour une utilisation par les applications exécutées sur des grappes créées par Kubernetes Engine.
    • Non : Affiche les tests d'analyse de chemin qui vérifient les chemins qui ne sont ni requis par Kubernetes Engine ni recommandés, mais qui peuvent néanmoins être utilisés par les applications s'exécutant sur des grappes créées par Kubernetes Engine.
    Si vous sélectionnez toutes les options OKE requises sous Filtres, tous les tests d'analyse de chemin disponibles sont affichés dans les onglets de catégorie de test. Si vous désélectionnez toutes les options OKE requises sous Filtres, aucun test d'analyse de chemin n'est affiché dans l'un des onglets de catégorie de test.
  5. Localisez le test d'analyse de chemin que vous souhaitez exécuter dans l'un des onglets de catégorie de test, en utilisant le nom et la description du test.
    Conseil : Si vous ne trouvez pas le test d'analyse de chemin que vous recherchez, ou si aucun test d'analyse de chemin n'est affiché, vérifiez deux fois que les options Type de problème à vérifier et OKE requis sont définies correctement. Vérifiez également que le test d'analyse de chemin que vous souhaitez exécuter s'applique à la grappe courante. Par exemple, si le type de réseau de la grappe est Superposition Flannel, vous ne pouvez sélectionner que des tests d'analyse de chemin qui s'appliquent au type de réseau Superposition Flannel.
  6. Sélectionnez Lancer l'analyse de chemin à côté du test d'analyse de chemin à exécuter pour afficher la page Analyse de chemin.
    Si vous n'avez pas les autorisations appropriées pour exécuter le test d'analyse de chemin sélectionné, un message d'erreur s'affiche. Vous devez accorder les autorisations appropriées avant de continuer. Pour connaître les autorisations d'octroi et une politique IAM recommandée, voir Autorisations requises dans la documentation sur l'analyseur de chemins réseau.
  7. Selon le test d'analyse de chemin que vous sélectionnez, modifiez les valeurs par défaut ou fournissez des valeurs pour les paramètres de test source et de destination dans la page Analyse de chemin.
    Dans de nombreux cas, les valeurs par défaut des paramètres de test sont dérivées des propriétés des ressources utilisées par le cluster. Dans certains cas, vous pouvez modifier les valeurs par défaut. Vous devez fournir des valeurs pour les paramètres de test qui n'ont pas de valeurs par défaut.
  8. Sélectionnez Exécuter l'analyse pour exécuter le test d'analyse de chemin.
  9. Autorisez l'exécution du test d'analyse de chemin, qui peut prendre jusqu'à une minute.
    Pendant l'exécution du test d'analyse des chemins, le trafic ne traverse pas réellement le réseau. Les informations de configuration réseau sont simplement collectées et analysées pour déterminer comment les chemins entre la source et la destination fonctionneraient ou échoueraient.
    Une fois le test d'analyse de chemin exécuté, tous les chemins possibles (jusqu'à un maximum de huit) qui ont été identifiés entre la source et la destination sont affichés dans différents onglets de la section Chemins découverts.
    Chaque onglet affiche les options configurées pour le test d'analyse de chemin, ainsi que des diagrammes visualisant le chemin aval et (le cas échéant) le chemin de retour pour le trafic entre la source et la destination, et le statut de chaque chemin :
    • Si le test d'analyse de chemin détermine que le trafic réseau peut traverser avec succès un chemin particulier, le diagramme de ce chemin comporte un statut de chemin accessible. Une flèche verte représente chaque saut réussi entre les noeuds du chemin global.
    • Si le test d'analyse de chemin détermine que le trafic réseau ne peut pas traverser un chemin particulier, le diagramme de ce chemin a un statut de chemin inaccessible. Une flèche verte représente tous les sauts réussis dans le chemin global, et une flèche rouge représente le saut ou le segment de réseau qui est inaccessible.
  10. Sélectionnez Voir les informations du diagramme pour voir plus de détails sur les sauts dans chaque chemin, ou sélectionnez une flèche spécifique pour obtenir des détails sur un saut particulier. Par exemple, pour déterminer si un saut a échoué en raison d'une erreur dans la configuration de routage ou de sécurité d'un noeud spécifique.
    Chaque saut a un statut d'acheminement, avec l'une des valeurs suivantes :
    • Transféré : La table de routage pertinente autorise le trafic.
    • Aucune route : La table de routage n'autorise pas explicitement le trafic.
    • Déterminer : La table de routage ne peut pas être analysée, car votre compte ne dispose pas des autorisations requises ou car les informations d'acheminement de noeud ne sont pas disponibles pour une autre raison.

    Si le noeud est une ressource OCI, les informations de routage sont liées directement à la règle de routage pertinente.

    Chaque saut a un statut de sécurité, avec l'une des valeurs suivantes :
    • Autorisé : La liste ou la règle de sécurité pertinente autorise le trafic.
    • Bloqué : La liste de sécurité ou la règle bloque le trafic.
    • Déterminer : La liste de sécurité ou la règle ne peut pas être analysée, car votre compte ne dispose pas des autorisations requises ou parce que les informations de sécurité du noeud ne sont pas disponibles pour une autre raison.

    Si le noeud est une ressource OCI, les informations de sécurité sont directement liées à la liste ou à la règle de sécurité pertinente.

  11. (Facultatif) Sélectionnez Télécharger le fichier JSON pour enregistrer la sortie du test d'analyse de chemin dans un fichier JSON de votre répertoire de téléchargements par défaut.
    L'enregistrement de la sortie du test d'analyse de chemin sous forme de fichier JSON vous permet de comparer les résultats du test dans le temps.
  12. Sélectionnez Fermer pour fermer la page Analyse de chemin.