Partager via


Résoudre les problèmes d’intégrité des ressources et de disponibilité entrante

Cet article peut vous aider à examiner les problèmes qui affectent la disponibilité de l’adresse IP frontale et des ressources back-end de votre équilibreur de charge.

Vous pouvez utiliser la fonctionnalité d’intégrité des ressources dans Azure Load Balancer pour déterminer l’intégrité de votre équilibreur de charge. Il analyse la métrique Disponibilité du chemin des données pour déterminer si les points de terminaison d’équilibrage de charge, l’adresse IP du front-end et les combinaisons de ports frontaux avec règles d’équilibrage de charge sont disponibles.

Remarque

Load Balancer de base ne prend pas en charge la fonctionnalité d’intégrité des ressources.

Le tableau suivant décrit la logique permettant de déterminer l’état d’intégrité de votre équilibreur de charge.

État d’intégrité des ressources Description
Disponible Votre ressource d’équilibreur de charge est saine et disponible.
Détérioré Votre équilibreur de charge présente des événements lancés par la plateforme ou l’utilisateur qui affectent aux performances. La métrique Disponibilité du chemin des données a fait état d’une intégrité inférieure à 90 %, mais supérieure à 25 % pendant au moins deux minutes. Vous pouvez rencontrer une dégradation modérée à grave des performances.
Indisponible Votre ressource d’équilibreur de charge n’est pas saine. La métrique Disponibilité du chemin des données a fait état d’une intégrité inférieure à 25 % pendant au moins deux minutes. Vous observez peut-être une détérioration des performances significative ou un défaut de disponibilité pour la connectivité entrante. Les utilisateurs ou la plateforme peuvent être à l’origine de l’indisponibilité.
Unknown L’état d’intégrité des ressources pour votre ressource d’équilibreur de charge n’a pas été mis à jour ou n’a pas reçu d’informations de disponibilité du chemin des données au cours des 10 dernières minutes. Cet état peut être temporaire, ou votre équilibreur de charge peut ne pas prendre en charge la fonctionnalité d’intégrité des ressources.

Surveiller la disponibilité de votre équilibreur de charge

Les deux métriques qu’Azure Load Balancer utilise pour vérifier que l’intégrité des ressources est la disponibilité du chemin de données et l’état de la sonde d’intégrité. Il est important de comprendre leur signification pour dériver des insights corrects.

Disponibilité du chemin des données

Un test ping TCP génère la métrique de disponibilité du chemin de données toutes les 25 secondes sur tous les ports frontaux où vous avez configuré des règles d’équilibrage de charge. Ce test ping TCP est routé vers une des instances back-end (sondées) saines. La métrique est un taux de pourcentage de réussite agrégé de pings TCP sur chaque combinaison d’adresses IP:port front-end pour chacune de vos règles d’équilibrage de charge, sur une période d’échantillonnage.

État de la sonde d’intégrité

Un test ping du protocole défini dans la sonde d’intégrité génère des métriques de l’état de la sonde d’intégrité. Ce test ping est envoyé à chaque instance dans le pool back-end et sur le port défini dans la sonde d’intégrité. Pour les sondes HTTP et HTTPS, un test ping réussi nécessite une réponse HTTP 200 OK. Avec les sondes TCP, toute réponse est considérée comme réussie.

Azure Load Balancer détermine l’intégrité de chaque instance principale lorsque la sonde atteint le nombre de réussites ou d’échecs consécutifs que vous avez configurés pour la propriété seuil de la sonde. L’état d’intégrité de chaque instance back-end détermine si l’instance back-end est autorisée à recevoir le trafic.

Comme pour la métrique Disponibilité du chemin des données, la métrique État de la sonde d’intégrité agrège la moyenne des pings et le nombre total de pings pendant l’intervalle d’échantillonnage. Cette valeur d’état de la sonde d’intégrité indique l’intégrité du back-end isolé de l’équilibreur de charge en sondant les instances back-end sans envoyer de trafic via le front-end.

Important

L’état de la sonde d’intégrité est échantillonné toutes les minutes. L’échantillonnage peut occasionner de légères fluctuations dans une valeur sinon stable.

Par exemple, envisagez des scénarios actifs/passifs dans lesquels il existe deux instances principales, une sonde vers le haut et une sonde. Le service de sonde d’intégrité peut capturer sept exemples pour l’instance saine et six pour l’instance non saine. Dans cette situation, une valeur précédemment stable de 50 apparaît sous la forme de 46,15 pour un intervalle d'une minute.

Diagnostiquer les équilibrages de charge dégradés et indisponibles

Comme indiqué dans cet article sur l’intégrité des ressources, un équilibreur de charge détérioré indique entre 25 % et 90 % pour la disponibilité du chemin de données. Un équilibreur de charge non disponible indique une disponibilité du chemin des données inférieure à 25 % sur une période de deux minutes.

Vous pouvez effectuer les mêmes étapes pour examiner l’échec que vous voyez dans les alertes d’état de la sonde d’intégrité ou de disponibilité du chemin de données que vous avez configurées. Les étapes suivantes explorent ce qu’il faut faire si vous vérifiez votre intégrité des ressources et que votre équilibreur de charge n’est pas disponible avec une valeur de disponibilité du chemin de données de 0 %. Le service est arrêté.

  1. Dans le portail Azure, accédez à la vue de mesures détaillée de la page pour vos insights d’équilibreur. Accédez à la vue depuis la page pour vos ressources de l’équilibreur de charge ou depuis le lien situé dans le message d’intégrité des ressources.

  2. Accédez à l’onglet Disponibilité front-end et back-end et analysez une fenêtre de 30 minutes de la période où l’état détérioré ou indisponible est apparu. Si la valeur de disponibilité du chemin de données est de 0 %, vous savez que quelque chose empêche le trafic pour toutes vos règles d’équilibrage de charge. Vous pouvez également voir combien de temps ce problème a duré.

  3. Vérifiez la métrique d’état de la sonde d’intégrité pour déterminer si votre chemin de données n’est pas disponible, car vous n’avez pas d’instances principales saines pour traiter le trafic. Si vous avez au moins une instance principale saine pour toutes vos règles d’équilibrage de charge et de trafic entrant, vous savez que votre configuration n’est pas à l’origine de l’indisponibilité de vos chemins de données. Ce scénario indique un problème de plateforme Azure. Bien que les problèmes de plateforme soient rares, ils déclenchent une alerte automatisée à notre équipe pour une résolution rapide.

Diagnostiquer les échecs de la sonde d’intégrité

Si votre métrique État de la sonde d’intégrité indique que vos instances back-end ne sont pas saines, nous vous recommandons de suivre la liste de contrôle suivante pour exclure les erreurs de configuration courantes :

  • Vérifiez l’utilisation du processeur de vos ressources pour déterminer si elles sont soumises à une charge élevée.

    Vous pouvez vérifier cela en affichant la métrique Pourcentage CPU de la ressource via la page Métriques. Pour plus d’informations, consultez Résoudre les problèmes de processeur élevé de machines virtuelles Microsoft Azure.

  • Si vous utilisez une sonde HTTP ou HTTPS est utilisée, vérifier si l’application est saine et réactive

    Vérifiez que votre application est opérationnelle en accédant directement via l’adresse IP privée ou publique au niveau de l’instance associée à votre instance back-end.

  • Passer en revue les groupes de sécurité réseau (NSG) appliqués aux ressources back-end. Vérifiez qu’aucune règle n’a une priorité supérieure à AllowAzureLoadBalancerInBound qui bloque la sonde d’intégrité.

    Pour ce faire, vous pouvez effectuer cette tâche en accédant aux paramètres réseau de vos groupes de machines virtuelles identiques ou de Virtual Machine Scale Sets. Si vous constatez que ce problème de groupe de sécurité réseau est le cas, déplacez la règle existante Allow ou créez une règle de haute priorité pour autoriser le trafic Azure Load Balancer.

  • Vérifier le système d’exploitation. Vérifiez que vos machines virtuelles écoutent sur le port de sonde. Passez également en revue les règles de pare-feu du système d’exploitation pour les machines virtuelles afin de s’assurer qu’elles ne bloquent pas le trafic de la sonde provenant de l’adresse IP 168.63.129.16.

    Vous pouvez vérifier les ports d’écoute en exécutant netstat -a dans une invite de commandes Windows ou netstat -l à partir d’un terminal Linux.

  • Vérifiez que vous utilisez le protocole approprié. Par exemple, une sonde qui utilise HTTP pour sonder un port à l’écoute d’une application non HTTP échoue.

  • Ne placez pas le Pare-feu Azure dans le pool principal d’équilibreurs de charge. Pour plus d’informations, consultez Intégrer le Pare-feu Azure à Azure Standard Load Balancer.