Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Begriff Lastenausgleich bezieht sich auf die Verteilung der Verarbeitung über mehrere Computerressourcen hinweg. Sie verteilen die Lasten, um den Ressourceneinsatz zu optimieren, den Durchsatz zu maximieren, die Reaktionszeit zu minimieren und eine Überlastung einzelner Ressourcen zu vermeiden. Der Lastenausgleich kann auch die Verfügbarkeit verbessern, indem eine Arbeitslast auf redundante Computerressourcen verteilt wird.
Azure bietet verschiedene Lastenausgleichsdienste, mit denen Sie Ihre Workloads über mehrere Computerressourcen verteilen können. Zu diesen Diensten gehören Azure API Management, Azure Application Gateway, Azure Front Door, Azure Load Balancer und Azure Traffic Manager.
In diesem Artikel werden Überlegungen beschrieben, mit denen Sie eine geeignete Lastenausgleichslösung für die Anforderungen Ihrer Workload ermitteln können.
Azure-Lastenausgleichsdienste
Die folgenden Wichtigsten Lastenausgleichsdienste und -dienste mit Lastenausgleichsfunktionen sind in Azure verfügbar:
DIE API-Verwaltung ist ein verwalteter Dienst, den Sie zum Veröffentlichen, Sichern, Transformieren, Verwalten und Überwachen von HTTP(S)-APIs verwenden können. Es stellt ein Gateway für Ihre APIs bereit und kann so konfiguriert werden, dass der Datenverkehr über Knoten in einem festgelegten Back-End-Pool mit Lastenausgleich ausgeglichen wird. Sie können aus drei verschiedenen Lastenausgleichsmethoden wählen: Roundrobin, gewichtet und prioritätsbasiert.
Von Bedeutung
API Management ist kein herkömmlicher, allgemeiner Load-Balancer. Sie wurde speziell für HTTP-APIs entwickelt, und ihre Lastenausgleichsfunktionen sind in der umfassenderen API-Verwaltungsfunktionalität optional. Die API-Verwaltung ist in diesem Artikel zur Vollständigkeit enthalten, da sie Lastenausgleichsfunktionen für bestimmte API-Hostingtopologien bereitstellt. Der Hauptzweck ist jedoch die API-Gateway-Funktionalität und nicht der Lastenausgleich.
Anwendungsgateway ist ein Lastverteiler für Webdatenverkehr. Sie stellt die Funktionalität eines Anwendungsbereitstellungs-Controllers als einen verwalteten Dienst bereit. Sie bietet außerdem verschiedene Layer-7-Lastenausgleichsfunktionen und Webanwendungsfirewallfunktionen. Verwenden Sie das Anwendungsgateway, um den Datenverkehr von öffentlichem Netzwerkraum zu Ihren Webservern zu übertragen, die in einem privaten Netzwerkbereich in einer Region gehostet werden.
Azure Front Door ist ein Anwendungsbereitstellungsnetzwerk, das globale Lastenausgleich und Standortbeschleunigung für Webanwendungen bereitstellt. Es bietet Layer-7-Funktionen für Ihre Anwendung wie Secure Sockets Layer (SSL) Offload, pfadbasiertes Routing, schnelles Failover und Zwischenspeichern, um die Leistung und hohe Verfügbarkeit zu verbessern.
Load Balancer ist ein Layer-4-Dienst, der eingehenden und ausgehenden Datenverkehr über alle PROTOKOLLE UDP (User Datagram Protocol) und Transmission Control Protocol (TCP) verarbeitet. Es ist für hohe Leistung und ultra-niedrige Latenz ausgelegt. Er ist für die Verarbeitung von Millionen von Anforderungen pro Sekunde konzipiert und stellt sicher, dass Ihre Lösung hochverfügbar ist. Das Lastenausgleichsmodul ist zonenredundant, wodurch eine hohe Verfügbarkeit in allen Verfügbarkeitszonen sichergestellt wird. Sie unterstützt sowohl eine regionale Bereitstellungstopologie als auch eine regionsübergreifende Topologie.
Traffic Manager ist ein DNS-basierter Datenverkehrslastenausgleich, der es Ihnen ermöglicht, den Datenverkehr optimal an Dienste in globalen Azure-Regionen zu verteilen und gleichzeitig hohe Verfügbarkeit und Reaktionsfähigkeit zu bieten. Da Traffic Manager ein DNS-basierter Lastenausgleichsdienst ist, wird der Lastenausgleich nur auf Domänenebene ausgeglichen. Aus diesem Grund kann es nicht so schnell wie Azure Front Door scheitern. DNS-Zwischenspeicherung und Systeme, die DNS-Zeit-zu-Live-Werte (TTL) ignorieren, führen häufig zu dieser Verzögerung.
Hinweis
Clusteringtechnologien wie Azure Container Apps oder Azure Kubernetes Service (AKS) enthalten Lastenausgleichskonstrukte. Diese Konstrukte arbeiten hauptsächlich im Rahmen ihrer eigenen Clustergrenze. Sie leiten den Datenverkehr an verfügbare Anwendungsinstanzen basierend auf Bereitschafts- und Integritätsüberprüfungen weiter. In diesem Artikel werden diese Lastenausgleichsoptionen nicht behandelt.
Dienstkategorisierungen
Azure-Lastenausgleichsdienste können in zwei Dimensionen kategorisiert werden: global im Vergleich zu regionalen und HTTP(S) und nicht HTTP(S).
Global im Vergleich zu regional
Global: Diese Lastenausgleichsdienste verteilen Datenverkehr über regionale Back-Ends, Clouds oder hybride lokale Dienste. Sie bieten eine einzelne Steuerungsebene, die den Benutzerverkehr global an verfügbare Back-Ends weiterleitet. Diese Dienste reagieren auf Änderungen der Dienstzulässigkeit oder Leistung, um die Verfügbarkeit und Leistung zu maximieren. Sie können sich diese als Systeme vorstellen, die die Lastverteilung zwischen Anwendungsinstanzen, Endpunkten oder Skalierungseinheiten durchführen, die in verschiedenen Regionen oder geografischen Gebieten gehostet werden.
Regional: Diese Lastenausgleichsdienste verteilen Datenverkehr innerhalb virtueller Netzwerke über virtuelle Computer (VMs) oder zonenredundante Dienstendpunkte innerhalb einer Region. Sie können sich diese als Systeme vorstellen, die einen Lastenausgleich zwischen virtuellen Computern, Containern oder Clustern innerhalb einer Region in einem virtuellen Netzwerk herstellen.
HTTP(S) im Vergleich zu Nicht-HTTP(S)
HTTP(S): Diese Lastenausgleichsdienste sind Layer-7-Lastenausgleichsgeräte , die nur HTTP(S)-Datenverkehr akzeptieren. Sie sind für Webanwendungen oder andere HTTP(S)-Endpunkte konzipiert. Zu den Features gehören SSL-Offload, Webanwendungsfirewall, pfadbasierter Lastenausgleich und Sitzungsaffinität.
Nicht-HTTP(S): Zu diesen Lastenausgleichsdiensten gehören Layer-4-TCP- und UDP-Dienste oder DNS-basierte Lastenausgleichsdienste.
In der folgenden Tabelle sind die Azure-Lastenausgleichsdienste zusammengefasst.
Dienstleistung | Global oder regional | Empfohlener Datenverkehr |
---|---|---|
API-Verwaltung | Regional oder global | NUR HTTP(S)-APIs |
Anwendungs-Gateway | Länderspezifisch | HTTP(S) |
Azure Front Door – der Dienst für Web-Traffic-Management | Weltweit | HTTP(S) |
Lastverteiler | Regional oder global | Non-HTTP(S) |
Verkehrsmanager | Weltweit | Non-HTTP(S) |
Hinweis
Traffic Manager und Load Balancer können jeden Datenverkehrstyp verteilen, einschließlich HTTP(S). Diese Dienste bieten jedoch keine Layer-7-Funktionen. Im Gegensatz zum Load Balancer verarbeitet der Traffic Manager den Datenverkehr nicht direkt. Traffic Manager verwendet DNS, um Clients an die entsprechenden Endpunkte zu leiten.
Auswählen einer Lastenausgleichslösung für Ihr Szenario
Berücksichtigen Sie beim Auswählen einer Lastenausgleichslösung die folgenden Faktoren:
Datenverkehrstyp: Bestimmen Sie, ob es sich um eine Web-HTTP(S)-Anwendung handelt und ob sie öffentlich oder privat ist.
Global im Vergleich zu regional: Klären Sie, ob Sie virtuelle Maschinen oder Container innerhalb eines einzelnen virtuellen Netzwerks lastenausgleichen müssen, Skalierungseinheiten oder Bereitstellungen über mehrere Regionen ausgleichen wollen oder beides.
Verfügbarkeit: Überprüfen Sie das Service-Level-Agreement (SLA).
Kosten: Berücksichtigen Sie die Kosten des Diensts selbst sowie die Betriebskosten für die Verwaltung einer lösung, die auf diesem Dienst basiert. Weitere Informationen finden Sie unter Azure-Preise.
Features und Grenzwerte: Identifizieren Sie die funktionen, die von jedem Dienst und den geltenden Dienstgrenzwerten unterstützt werden.
Das folgende Flussdiagramm hilft Ihnen bei der Auswahl einer Lastenausgleichslösung für Ihre Anwendung. Das Flussdiagramm führt Sie durch eine Reihe von wichtigen Entscheidungskriterien, um eine Empfehlung zu erreichen.
Tipp
Sie können Microsoft Copilot in Azure verwenden, um Sie durch diese Entscheidung zu führen, ähnlich wie das hier beschriebene Flussdiagramm. Weitere Informationen finden Sie unter Arbeiten mit Azure Load Balancer mit Microsoft Copilot in Azure.
Jede Anwendung hat eindeutige Anforderungen, die nicht in einfachen Entscheidungsstrukturen erfasst werden. Behandeln Sie dieses Flussdiagramm oder die Copilot-Empfehlung als Ausgangspunkt. Führen Sie dann eine ausführlichere Auswertung aus.
Wenn Ihre Workload mehrere Dienste enthält, die einen Lastenausgleich erfordern, bewerten Sie jeden Dienst einzeln. Ein effektives Setup verwendet häufig mehrere Arten von Lastenausgleichslösung. Sie können diese Lösungen an verschiedenen Stellen in die Architektur Ihrer Workload integrieren, um einzigartige Funktionen oder Rollen zu erfüllen.
Definitionen
Webanwendung (HTTP/HTTPS) bezieht sich auf eine Anwendung, die mindestens eine der folgenden Funktionen erfordert:
- Trifft eine Routingentscheidung für Layer-7-Daten, z. B. einen URL-Pfad
- Unterstützt die Überprüfung der Kommunikationsnutzlast, z. B. einen HTTP-Anforderungstext
- Behandelt die Funktionalität von TLS (Transport Layer Security)
Die in das Internet gerichtete Anwendung bezieht sich auf eine Anwendung, die öffentlich über das Internet zugänglich ist. Als bewährte Methode wenden Anwendungsbesitzer restriktive Zugriffsrichtlinien an, oder schützen Sie die Anwendung, indem Sie Angebote wie webanwendungsfirewall und verteilten Denial-of-Service-Schutz einrichten.
Global oder in mehreren Regionen bereitgestellt bedeutet, dass das Lastenausgleichsmodul über eine einzige, hoch verfügbare Kontrollebene verfügen sollte, die Datenverkehr an öffentliche Endpunkte in Ihrer global verteilten Anwendung weiterleitet. Diese Konfiguration kann aktive oder passive Topologien in allen Regionen unterstützen.
Hinweis
Sie können einen regionalen Dienst, wie z. B. das Application Gateway, verwenden, um die Lastverteilung über Back-Ends hinweg zu steuern, die mehrere Regionen umfassen, und das Routing über eine zentrale Steuerungsebene zu kontrollieren. Es funktioniert mithilfe einer regionsübergreifenden privaten Verbindung, eines globalen virtuellen Netzwerk-Peerings oder sogar mit öffentlichen IP-Adressen von Diensten in anderen Regionen.
Dieses Szenario ist nicht der primäre Punkt dieser Entscheidung.
Die Verwendung einer regionalen Ressource als Router für global verteilte Back-Ends führt zu einem regionalen Fehlerpunkt. Es entsteht auch eine zusätzliche Latenz, da der Datenverkehr durch eine Region umgeleitet wird, bevor er in eine andere geleitet wird und dann zurück.
Platform as a Service (PaaS) bietet eine verwaltete Hostingumgebung, in der Sie Ihre Anwendung bereitstellen können, ohne VMs oder Netzwerkressourcen verwalten zu müssen. In diesem Fall bezieht sich PaaS auf Dienste, die den integrierten Lastenausgleich innerhalb einer Region bereitstellen. Weitere Informationen finden Sie unter Auswählen eines Computediensts zur Skalierbarkeit.
Mit AKS können Sie containerisierte Anwendungen bereitstellen und verwalten. AKS bietet serverlose Kubernetes, eine integrierte kontinuierliche Integration und kontinuierliche Bereitstellung (CI/CD) sowie Sicherheits- und Governance auf Unternehmensniveau. Weitere Informationen finden Sie unter AKS-Architekturdesign.
Infrastruktur as a Service (IaaS) ist eine Rechenoption, bei der Sie die benötigten virtuellen Maschinen zusammen mit den zugehörigen Netzwerk- und Speicherkomponenten bereitstellen. IaaS-Anwendungen erfordern einen internen Lastenausgleich innerhalb eines virtuellen Netzwerks mit Load Balancer.
Die Verarbeitung auf Anwendungsebene bezieht sich auf ein spezielles Routing innerhalb eines virtuellen Netzwerks. Beispiele hierfür sind pfadbasiertes Routing über VMs oder VM-Skalierungsgruppen hinweg. Weitere Informationen finden Sie unter Bereitstellen eines Anwendungsgateways hinter Azure Front Door.
Nur APIs bezieht sich auf die Notwendigkeit, HTTP(S)-APIs lastzuverteilen, die keine Webanwendungen sind. Wenn Ihre Workload in diesem Fall bereits das API-Management für seine Gateway-Fähigkeiten verwendet, können Sie die optionale Lastverteilungsfunktion in Betracht ziehen, um den Datenverkehr auf API-Back-Ends zu lenken, die noch nicht über einen anderen Mechanismus lastverteilt werden. Wenn Ihre Workload keine API-Verwaltung verwendet, verwenden Sie sie nicht ausschließlich für den Lastenausgleich.
Leistungsbeschleunigung bezieht sich auf Features, die den Webzugriff beschleunigen. Leistungsbeschleunigung kann mithilfe von Content Delivery Networks oder optimierten Point-of-Presence-Ingress für das beschleunigte Client-Onboarding in das Zielnetzwerk erreicht werden. Azure Front Door unterstützt sowohl Content Delivery Networks als auch Anycast-Datenverkehrsbeschleunigung. Sie können die Vorteile beider Features mit oder ohne Anwendungsgateway in der Architektur erzielen.
Weitere Überlegungen
Jeder Lastenausgleichsdienst verfügt auch über Funktionsunterstützungs- oder Implementierungsdetails, die Sie berücksichtigen sollten. Hier sind einige Beispiele, die für Ihr Lastenausgleichsszenario relevant sein können:
- WebSockets-Unterstützung
- Unterstützung von Server-gesendeten Ereignissen
- HTTP/2-Unterstützung (sowohl Empfangen als auch Fortsetzen von Back-End-Knoten)
- Unterstützung für beständige Sitzungen
- Integritätsüberwachungsmechanismus für Back-End-Knoten
- Kundenerfahrung oder Verzögerung bei der Erkennung und Entfernung fehlerhafter Knoten aus der Routinglogik
Offload-Funktionen in Ihr Lastenausgleichsmodul
Mit einigen Lastenausgleichsoptionen in Azure können Sie Funktionen von den Back-End-Knoten in das Lastenausgleichsmodul auslagern. Diese Optionen implementieren das Entwurfsmuster für das Gateway Offloading der Cloud. Beispielsweise kann das Anwendungsgateway TLS auslagern, sodass das öffentlich zugängliche Zertifikat Ihrer Workload an einem Ort statt über Back-End-Knoten verwaltet wird. Die API-Verwaltung kann so konfiguriert werden, dass einige grundlegende Autorisierungsbedenken wie das Überprüfen von Ansprüchen in JSON-Webtoken (JWT)-Zugriffstoken ausgelagert werden. Das Entladen von querschneidenden Bedenken kann dazu beitragen, die Komplexität der Logik in Ihren Back-Ends zu verringern und deren Leistung zu verbessern.
Beispiele
In der folgenden Tabelle sind verschiedene Artikel aufgeführt, die auf den in der Lösung verwendeten Lastenausgleichsdiensten basieren.
Dienste | Artikel | BESCHREIBUNG |
---|---|---|
Lastverteiler | Lastenausgleich für virtuelle Computer über Verfügbarkeitszonen hinweg | Lastenausgleichs-VMs, die sich über Verfügbarkeitszonengrenzen hinweg erstrecken, helfen Ihnen dabei, Ihre Apps und Daten vor dem unwahrscheinlichen Ausfall oder Verlust eines ganzen Rechenzentrums zu schützen. Wenn Zonenredundanz gegeben ist, können eine oder mehrere Verfügbarkeitszonen ausfallen. Der Datenpfad ist weiterhin verfügbar, solange eine Zone in der Region noch fehlerfrei arbeitet. |
Verkehrsmanager | Für Hochverfügbarkeit und Notfallwiederherstellung konzipierte Multi-Tier-Webanwendung | Stellen Sie resiliente Multi-Tier-Anwendungen bereit, die für Hochverfügbarkeit und Notfallwiederherstellung entwickelt wurden. Wenn die primäre Region nicht mehr verfügbar ist, führt Traffic Manager ein Failover zur sekundären Region aus. |
Anwendungsgateway und API-Verwaltung | API-Verwaltungs-Zielzonenarchitektur | Verwenden Sie das Anwendungsgateway zum Deaktivieren der Webanwendungsfirewall und TLS. Verwenden Sie die API-Verwaltung, um das Lastenausgleich über API-Back-Ends hinweg zu laden. |
Traffic Manager und Anwendungsgateway | Regionsübergreifender Lastenausgleich mit Traffic Manager und Application Gateway | Erfahren Sie, wie Sie Webworkloads hosten und resiliente mehrschichtige Anwendungen in mehreren Azure-Regionen bereitstellen, um Hochverfügbarkeit und eine stabile Infrastruktur für die Notfallwiederherstellung zu erreichen. |
Nächste Schritte
- Erstellen eines öffentlichen Lastenausgleichs für den Lastenausgleich von virtuellen Computern
- Weiterleiten von Webdatenverkehr über Application Gateway
- Konfigurieren von Traffic Manager für einen globalen Lastenausgleich auf DNS-Basis
- Konfigurieren von Azure Front Door für eine hochverfügbare globale Webanwendung