Résolution des problèmes liés à l’état de la sonde d'intégrité Azure Load Balancer

Cette page contient des informations de résolution des problèmes liés aux questions courantes relatives à l’état de la sonde d'intégrité Azure Load Balancer.

Symptôme : les machines virtuelles situées derrière Load Balancer ne répondent pas aux sondes d’intégrité

Pour que les serveurs principaux participent au jeu d’équilibrage de charge, ils doivent réussir la vérification de la sonde. Pour plus d’informations sur les sondes d’intégrité, consultez la page Comprendre les sondes de l’équilibrage de charge

Les machines virtuelles du pool principal de l’équilibreur de charge peuvent ne pas répondre aux sondes en raison des raisons suivantes :

  • Une machine virtuelle du pool principal de l’équilibreur de charge est défectueuse
  • Une machine virtuelle du pool principal de l’équilibreur de charge n’écoute pas sur le port de la sonde
  • Un pare-feu ou un groupe de sécurité réseau bloque le port sur les machines virtuelles du pool principal de l’équilibreur de charge
  • Autres erreurs de configuration de l’équilibreur de charge

Cause 1 : Une machine virtuelle du pool principal de l’équilibreur de charge est défectueuse

Validation et résolution

Pour résoudre ce problème, connectez-vous aux machines virtuelles participantes et vérifiez si l’état de la machine virtuelle est sain et si elle peut répondre à la commande PsPing ou TCPing d’une autre machine virtuelle du pool. Si la machine virtuelle est défectueuse ou si elle ne peut pas répondre à la sonde, vous devez corriger le problème et rétablir la machine virtuelle à un état sain pour qu’elle puisse faire partie de l’équilibrage de charge.

Cause 2 : une machine virtuelle du pool principal de l’équilibreur de charge n’écoute pas sur le port de la sonde

Si la machine virtuelle est saine, mais ne répond pas à la sonde, il se peut que le port de la sonde ne soit pas ouvert sur la machine virtuelle participante ou que la machine virtuelle n’écoute pas sur ce port.

Validation et résolution

  1. Connectez-vous à la machine virtuelle principale.
  2. Ouvrez une invite de commandes et exécutez la commande suivante pour vérifier qu’une application écoute sur le port de la sonde : netstat -an
  3. Si l’état du port n’indique pas ÉCOUTE, configurez le port approprié.
  4. Vous pouvez également sélectionner un autre port qui indique ÉCOUTE, et mettre à jour en conséquence la configuration de l’équilibreur de charge.

Cause 3 : Un pare-feu ou un groupe de sécurité réseau bloque le port sur les machines virtuelles du pool principal de l’équilibreur de charge

Si le pare-feu sur la machine virtuelle bloque le port de la sonde, ou un ou plusieurs groupes de sécurité réseau configurés sur le sous-réseau ou sur la machine virtuelle n’autorise pas la sonde à atteindre le port, la machine virtuelle est incapable de répondre à la sonde d’intégrité.

Validation et résolution

  1. Si le pare-feu est activé, vérifiez s’il est configuré pour autoriser le port de la sonde. Si tel n’est pas le cas, configurez le pare-feu pour autoriser le trafic sur le port de la sonde, puis procédez à un nouveau test.
  • Vérifiez que le pare-feu de votre machine virtuelle ne bloque pas le trafic de la sonde provenant d’une adresse IP 168.63.129.16
  • Vous pouvez vérifier les ports d’écoute en exécutant netstat -a à l’invite de commandes Windows ou netstat -l à partir d’un terminal Linux
  • Vous pouvez interroger vos profils de pare-feu pour vérifier si vos stratégies bloquent le trafic entrant en exécutant netsh advfirewall show allprofiles | more à partir d’une invite de commandes Windows ou sudo iptables -L à partir d’un terminal Linux pour voir toutes les règles de pare-feu configurées.
  • Pour plus d’informations sur la résolution des problèmes de pare-feu pour les VM Azure, consultez Le pare-feu Azure VM Guest OS bloque le trafic entrant.
  1. Dans la liste des groupes de sécurité réseau, vérifiez si le trafic entrant ou sortant sur le port de la sonde subit des interférences.
  2. Vérifiez également si une règle Refuser tout des groupes de sécurité réseau sur la carte d’interface réseau de la machine virtuelle ou du sous-réseau a une priorité supérieure à celle de la règle par défaut qui autorise les sondes et le trafic de l’équilibreur de charge (les groupes de sécurité réseau doivent autoriser l’adresse IP 168.63.129.16 de l’équilibreur de charge).
  3. Si l’une de ces règles bloque le trafic de la sonde, supprimez et reconfigurez les règles pour autoriser le trafic de la sonde. 
  4. Vérifiez si la machine virtuelle répond à présent aux sondes d’intégrité.

Cause 4 : Autres erreurs de configuration de l’équilibreur de charge

Si toutes les causes précédentes semblent vérifiées et résolues et si la machine virtuelle principale ne répond toujours pas à la sonde d’intégrité, testez manuellement la connectivité, puis collectez des traces pour comprendre la connectivité.

Validation et résolution

  1. Utilisez Psping à partir d’une des autres machines virtuelles dans le réseau virtuel pour tester la réponse du port de la sonde (exemple : .\psping.exe -t 10.0.0.4:3389) et enregistrez les résultats.
  2. Utilisez TCPing à partir d’une des autres machines virtuelles dans le réseau virtuel pour tester la réponse du port de la sonde (exemple : .\tcping.exe 10.0.0.4 3389) et enregistrez les résultats.
  3. Si aucune réponse n’est reçue dans ces tests ping,
    • exécutez une trace Netsh simultanée sur la machine virtuelle du pool principal cible et une autre machine virtuelle de test à partir du même réseau virtuel. À présent, exécutez un test PsPing pendant un certain temps, collectez des traces réseau, puis arrêtez le test.
    • Analysez la capture du réseau et vérifiez que des paquets entrants et sortants sont associés à la requête ping.
      • Si aucun paquet entrant n’est observé sur la machine virtuelle du pool principal, il se peut qu’une erreur de configuration des groupes de sécurité réseau ou UDR bloque le trafic.
      • Si aucun paquet sortant n’est observé sur la machine virtuelle du pool principal, celle-ci doit être vérifiée pour y rechercher les problèmes non liés (par exemple, une application bloquant le port de la sonde).
    • Vérifiez si les paquets de la sonde sont contraints d’atteindre une autre destination (probablement via les paramètres UDR) avant l’équilibreur de charge. Ce faisant, le trafic peut ne jamais atteindre la machine virtuelle principale.
  4. Modifiez le type de sonde (par exemple, remplacez HTTP par TCP) et configurez le port correspondant dans les listes de contrôle d’accès (ACL) des groupes de sécurité réseau et le pare-feu pour vérifier si le problème est lié à la configuration de la réponse de la sonde. Pour plus d’informations sur la configuration de la sonde d’intégrité, consultez la page Endpoint Load Balancing health probe configuration (Configuration d’une sonde d’intégrité pour l’équilibrage de charge des points de terminaison).

Étapes suivantes

Si les étapes précédentes ne vous permettent pas de résoudre le problème, ouvrez un ticket d’incident.