Behandeln von Problemen mit Azure Load Balancer Ressourcenintegrität und eingehender Verfügbarkeit

Zusammenfassung

Dieser Artikel kann Ihnen helfen, Probleme zu untersuchen, die sich auf die Verfügbarkeit der Frontend-IP und der Backend-Ressourcen Ihres Load Balancers auswirken.

Sie können das Feature ressource health in Azure Load Balancer verwenden, um den Zustand des Lastenausgleichs zu ermitteln. Es analysiert die Datenpfadverfügbarkeitsmetrik, um zu bestimmen, ob die Endpunkte für den Lastenausgleich, die Front-End-IP und Frontend-Portkombinationen mit Lastenausgleichsregeln verfügbar sind.

Hinweis

Der Basic Load Balancer unterstützt das Feature "Ressourcengesundheit" nicht.

In der folgenden Tabelle wird die Logik zur Bestimmung des Gesundheitszustands Ihres Lastenausgleichers beschrieben.

Ressourcenintegritätsstatus Beschreibung
Verfügbar Ihre Load Balancer-Ressource ist funktionstüchtig und verfügbar.
Beeinträchtigt Ihr Lastenausgleichsmodul verfügt über Plattform- oder vom Benutzer initiierte Ereignisse, die sich auf die Leistung auswirken. Die Metrik der Datenpfadverfügbarkeit berichtete einen Zustand von weniger als 90 %, aber mehr als 25 % für mindestens zwei Minuten. Möglicherweise kommt es zu einer moderaten bis schwerwiegenden Leistungsbeeinträchtigung.
Nicht verfügbar Ihre Load-Balancer-Ressource ist nicht funktionsfähig. Die Metrik zur Verfügbarkeit des Datenpfads meldete mindestens zwei Minuten lang einen Zustand von weniger als 25% Gesundheit. Möglicherweise kommt es zu einer erheblichen Leistungsbeeinträchtigung oder zu einer fehlenden Verfügbarkeit für eingehende Verbindungen. Benutzer- oder Plattformereignisse können zu einer Nichtverfügbarkeit führen.
Unbekannt Der Ressourcenintegritätsstatus für Ihre Lastenausgleichsressource hat in den letzten 10 Minuten keine Datenpfadverfügbarkeitsinformationen aktualisiert oder empfangen. Dieser Zustand kann vorübergehend sein, oder Ihr Load Balancer unterstützt möglicherweise die Funktion zur Überwachung der Ressourcengesundheit nicht.

Überwachen der Verfügbarkeit Ihres Load-Balancers

Die beiden Metriken, die Azure Load Balancer zum Überprüfen der Ressourcenintegrität verwenden, sind Datenpfadverfügbarkeit und Health Probe Status. Es ist wichtig, ihre Bedeutung zu verstehen, um korrekte Erkenntnisse abzuleiten.

Data Path Availability (Verfügbarkeit des Datenpfads)

Ein TCP-Ping generiert die Datenpfadverfügbarkeitsmetrik alle 25 Sekunden auf allen Front-End-Ports, in denen Sie Lastenausgleichsregeln konfiguriert haben. Dieser TCP-Ping wird an eine der fehlerfreien Back-End-Instanzen (probed up) weitergeleitet. Die Metrik ist eine aggregierte prozentuale Erfolgsrate von TCP-Pings für jede Front-End-IP/Port-Kombination für jede Ihrer Lastenausgleichsregeln für einen Beispielzeitraum.

Integritätsteststatus

Ein Ping des protokolls, das in der Integritätssonde definiert ist, generiert die Metrik "Health Probe Status". Dieser Ping wird an jede Instanz im Back-End-Pool und an den im Integritätstest definierten Port gesendet. Für HTTP- und HTTPS-Prüfpunkte erfordert ein erfolgreicher Ping eine HTTP 200 OK Antwort. Bei TCP-Prüfern wird jede Antwort als erfolgreich betrachtet.

Azure Load Balancer bestimmt den Status jeder Back-End-Instanz, wenn die Probe die Anzahl der aufeinander folgenden Erfolge oder Fehler erreicht, die Sie für die Schwellenwerteigenschaft des Probepunkts konfiguriert haben. Der Integritätsstatus jeder Back-End-Instanz bestimmt, ob die Back-End-Instanz Datenverkehr empfangen darf.

Wie die Metrik "Datenpfadverfügbarkeit" ist die Metrik "Integritätssondenstatus" eine Metrik, die die durchschnittliche Anzahl erfolgreicher und gesamter Pings während des Samplingintervalls aggregiert. Der Integritätsteststatuswert gibt die Back-End-Integrität isoliert vom Lastenausgleich an, indem Sie Ihre Back-End-Instanzen probieren, ohne Datenverkehr über das Frontend zu senden.

Von Bedeutung

Der Status der Gesundheitsüberwachung wird im Minutentakt überprüft. Diese Stichprobe kann zu geringfügigen Schwankungen in einem andernfalls stetigen Wert führen.

Betrachten Sie z. B. aktive/passive Szenarien, in denen zwei Back-End-Instanzen vorhanden sind, eine probeweise nach oben und eine probeweise nach unten. Der Gesundheitsprüfdienst erfasst sieben Proben für die fehlerfreie Instanz und sechs für die fehlerhafte Instanz. Diese Situation führt zu einem zuvor konstanten Wert von 50, der für ein Minutenintervall als 46,15 angezeigt wird.

Diagnose beeinträchtigter und nicht verfügbarer Lastenausgleichsgeräte

Wie in diesem Artikel über Ressourcengesundheit beschrieben, zeigt ein degradierter Load Balancer zwischen 25% und 90% für die Datenpfadverfügbarkeit. Ein nicht verfügbarer Load Balancer ist einer mit weniger als 25% Datenpfad-Verfügbarkeit über einen Zeitraum von zwei Minuten.

Sie können die gleichen Schritte ausführen, um den Fehler zu untersuchen, den Sie in allen von Ihnen konfigurierten Warnungen zur Integritätsprüfung oder datenpfadverfügbarkeit sehen. In den folgenden Schritten erfahren Sie, was Sie tun müssen, wenn Sie den Ressourcenstatus überprüfen und der Load Balancer mit einem Verfügbarkeitswert des Datenpfads von 0% nicht verfügbar ist. Ihr Dienst ist nicht mehr vorhanden.

  1. Wechseln Sie im Azure-Portal zur detaillierten Metrikansicht der Seite für Ihre Load-Balancer-Insights. Greifen Sie auf die Ansicht von der Seite für Ihre Load Balancer-Ressource oder über den Link in der Integritätsmeldung zu Ihrer Ressource zu.

  2. Wechseln Sie zur Registerkarte für die Verfügbarkeit von Frontend und Backend, und überprüfen Sie ein 30-minütiges Fenster des Zeitraums, in dem der Zustand beeinträchtigt oder nicht verfügbar war. Wenn der Datenpfadverfügbarkeitswert 0 % ist, wissen Sie, dass der Datenverkehr für alle Ihre Lastverteilungsregeln blockiert wird. Sie können auch sehen, wie lange dieses Problem gedauert hat.

  3. Überprüfen Sie die Metrik "Health Probe Status", um zu ermitteln, ob Ihr Datenpfad nicht verfügbar ist, da Sie keine gesunden Backend-Instanzen haben, um Datenverkehr zu verarbeiten. Wenn Sie mindestens eine fehlerfreie Back-End-Instanz für alle Ihre Lastenausgleichs- und eingehenden Regeln haben, wissen Sie, dass Ihre Konfiguration nicht dazu führt, dass Ihre Datenpfade nicht verfügbar sind. Dieses Szenario gibt ein Azure Plattformproblem an. Obwohl Plattformprobleme selten sind, lösen sie eine automatisierte Warnung an unser Team aus, um eine schnelle Lösung zu erhalten.

Diagnose von Gesundheitsprüfungsfehlern

Wenn die Metrik "Integritätsteststatus" angibt, dass Ihre Backend-Instanzen fehlerhaft sind, empfehlen wir die Verwendung der folgenden Checkliste, um häufige Konfigurationsfehler auszuschließen.

  • Überprüfen Sie die CPU-Auslastung für Ihre Ressourcen, um festzustellen, ob sie unter hoher Auslastung sind.

    Sie können überprüfen, indem Sie die Metrik "Prozentsatz CPU" der Ressource über die Seite "Metriken " anzeigen. Weitere Informationen finden Sie unter Probleme mit hoher CPU-Auslastung bei Azure Windows virtuellen Maschinen beheben.

  • Wenn Sie einen HTTP- oder HTTPS-Prüfpunkt verwenden, überprüfen Sie, ob die Anwendung fehlerfrei und reaktionsfähig ist.

    Überprüfen Sie, ob Ihre Anwendung funktionsfähig ist, indem Sie direkt über die private IP-Adresse oder die öffentliche IP-Adresse auf Instanzebene zugreifen, die Ihrer Back-End-Instanz zugeordnet ist.

  • Überprüfen Sie die Netzwerksicherheitsgruppen (Network Security Groups, NSGs), die auf Ihre Back-End-Ressourcen angewendet wurden. Stellen Sie sicher, dass keine Regeln eine höhere Priorität haben als AllowAzureLoadBalancerInBound, die die Integritätsprüfung blockieren.

    Sie können diese Aufgabe ausführen, indem Sie die Netzwerkeinstellungen Ihrer Backend-VMs oder virtuellen Maschinen-Skalierungsgruppen aufrufen. Wenn Sie feststellen, dass dieses NSG-Problem der Fall ist, verschieben Sie die vorhandene Allow Regel, oder erstellen Sie eine neue Regel mit hoher Priorität, um Azure Load Balancer Datenverkehr zuzulassen.

  • Überprüfen Sie Ihr Betriebssystem. Stellen Sie sicher, dass Ihre virtuellen Computer auf dem Probeanschluss lauschen. Überprüfen Sie außerdem die Betriebssystemfirewallregeln für die virtuellen Computer, um sicherzustellen, dass sie den Prüfpunktdatenverkehr nicht blockieren, der von der IP-Adresse 168.63.129.16stammt.

    Sie können die Überwachungsports überprüfen, indem Sie netstat -a über eine Windows Eingabeaufforderung oder netstat -l von einem Linux-Terminal aus ausführen.

  • Stellen Sie sicher, dass Sie das richtige Protokoll verwenden. Ein Prüfpunkt, der HTTP verwendet, um einen Port zu untersuchen, der auf eine Nicht-HTTP-Anwendung lauscht, schlägt beispielsweise fehl.

  • Platzieren Sie Azure Firewall nicht im Back-End-Pool von Lastenausgleichsmodulen. Weitere Informationen finden Sie unter Integrate Azure Firewall mit Azure Load Balancer Standard.