Lastenausgleich auf AWS: Kennen Sie Ihre Optionen

Einführung

Trotz der großen Bandbreite an Einsatzmöglichkeiten, Plattformen und Technologien haben die meisten Anwendungen einige gemeinsame Anforderungen: Sie müssen online bleiben und vor Hardwareausfällen geschützt sein. Sie müssen skalierbar sein, um die Nachfrage zu erfüllen, und sie müssen vor Kompromittierungen und Angriffen geschützt werden.

Seit die Migration von Anwendungen von Großrechnern auf offene Systeme begann, nutzen Unternehmen Load Balancer, um die Skalierbarkeit und Verfügbarkeit von Anwendungen zu verwalten. Angesichts komplexerer Probleme und anspruchsvollerer Sicherheitsbedrohungen entwickelten Load Balancer umfangreichere Funktionssätze mit zusätzlichen Sicherheits- und Optimierungsmöglichkeiten.

Im Laufe der Zeit hat sich der einfache Load Balancer zum leistungsstarken Application Delivery Controller (ADC) entwickelt. Weltweit verlassen sich Tausende von Organisationen auf ADCs, um die Anwendungen, die unser Leben bestimmen, sicher, schnell und verfügbar zu machen. Von Rettungsdiensten und Bankgeschäften bis hin zu Gaming und Dating bieten ADCs die Technologie, die Apps zu optimaler Leistung verhilft.

Auch wenn Anwendungen von traditionellen On-Premise-Modellen auf Cloud-Dienste umsteigen, sind ihre Anforderungen an Skalierbarkeit, Sicherheit und Verfügbarkeit nicht geringer geworden. Daher überrascht es nicht, dass alle Cloud-Plattformen – sowohl öffentliche als auch private – Lastausgleichsdienste als Teil ihrer zentralen Infrastructure-as-a-Service-Angebote (IaaS) bereitstellen.

Der Elastic Load Balancing (ELB)-Dienst von Amazon Web Services (AWS) unterstützt Unternehmen bei der Bereitstellung von Hunderttausenden von Anwendungen, darunter einige der größten im Internet. Und genau wie lokale Load Balancer ihre Kapazitäten erweiterten, um den Kundenanforderungen gerecht zu werden, werden auch die Load Balancing-Dienste in AWS kontinuierlich um neue Features und Funktionen erweitert.

Während ELB für viele Organisationen eine gute Wahl sein kann, benötigen andere zusätzliche Funktionen, um ihre kritischen Anwendungen optimal zu unterstützen. Darüber hinaus haben einige Unternehmen bereits ADCs und Load Balancer eingesetzt, um ihre lokalen Anwendungen zu skalieren und zu verwalten. Für diese Organisationen kann die Einführung derselben Plattform auf AWS wie im Rechenzentrum den Zeit- und Kostenaufwand sowie das Risiko einer Cloud-Migration reduzieren. Bevor wir uns für den für Ihr Unternehmen geeigneten Lastausgleichsdienst entscheiden, werfen wir einen Blick auf die verschiedenen bei AWS verfügbaren Lastausgleichsoptionen.

Lastausgleich auf AWS

Amazon Web Services bietet von allen gängigen IaaS-Anbietern das umfangreichste Serviceangebot und deckt eine riesige Bandbreite an Funktionen und Einsatzmöglichkeiten ab, von einfacher Datenverarbeitung und Blockspeicherung bis hin zu fortgeschrittenen Datenbanken und Umgebungen für maschinelles Lernen. Eine Schlüsselkomponente vieler AWS-Kundenarchitekturen ist der Load Balancer, von dem AWS zwei unterschiedliche Dienste (beide unter dem Namen „Elastic Load Balancing“) für den Einsatz in Virtual Private Cloud (VPC)-Umgebungen anbietet.

Anwendungslastausgleich

Der Application Load Balancer (ALB) von Amazon bietet Lastausgleich, Integritätsüberwachung und URL-basiertes Anforderungsrouting in der AWS-Cloud. ALB bietet Lastenausgleich für HTTP- und HTTPS-Protokolle mit SSL-Kundenzertifikaten, die von einem der AWS-Zertifikatsverwaltungsdienste geladen werden, und unterstützt auch den Lastenausgleich von WebSocket-Verkehr. Darüber hinaus ermöglicht ALB die automatische Skalierung der Back-End-Serverressourcen von Elastic Compute Cloud (EC2): Bei steigendem Datenverkehr kann ALB die Bereitstellung zusätzlicher Server veranlassen und diese bei nachlassender Nachfrage wieder entfernen.

Der ALB-Dienst lässt sich außerdem skalieren, um zusätzliche Lasten zu bewältigen. Wenn der Anwendungsnetzwerkverkehr zunimmt, werden zusätzliche ALB-Instanzen erstellt und beim DNS registriert. Der Datenverkehr wird dann per DNS-Round-Robin an die ALB-Instanzen verteilt. Für eine optimale Leistung bei plötzlichen Arbeitslasten wird das Vorwärmen von ALB-Instanzen empfohlen, da die Hochlaufzeit für neue Instanzen zwischen einer und sieben Minuten betragen kann.

ALB kann über eine Webkonsole, CLI, API, Cloud Formation Templates (CFTs) und viele Automatisierungstools wie Ansible bereitgestellt werden.

Netzwerk-Load-Balancer

Die neuste Ergänzung der AWS Elastic Load Balancing-Familie ist der Network Load Balancer (NLB). Wie der „klassische“ Load Balancer arbeitet dieser auf Ebene 4 und bietet verbindungsbasiertes Load Balancing sowie Integritätsprüfungen auf Netzwerk- und Anwendungsebene. NLB ist darauf ausgelegt, mit Verkehrsspitzen und einem hohen Verbindungsaufkommen gut zurechtzukommen. Darüber hinaus erlaubt NLB als Ziele sowohl private RFC 1918-IP-Adressen als auch EC2-Instanzen. Die Optionen für automatische Skalierung, Selbstskalierung und Bereitstellung ähneln ALB.

Klassischer Load Balancer

AWS bietet außerdem weiterhin seinen „klassischen“ Elastic Load Balancer an, der grundlegendes Layer-4-Load-Balancing für TCP-Verkehr unterstützt, jedoch kein Layer-7-Verkehrsbalancing oder -Steuerung. Die Optionen für automatische Skalierung, Selbstskalierung und Bereitstellung ähneln ALB.

Virtueller F5 BIG-IP-ADC

Die F5® BIG-IP® ADC-Plattform stellt das andere Ende des Lastausgleichsspektrums des leichten klassischen AWS-Lastenausgleichs dar. Mit einer Reihe von Funktionen für ein breites Spektrum an Herausforderungen in den Bereichen Sicherheit, Anwendungsoptimierung und Verfügbarkeit kann BIG-IP Probleme lösen und Anwendungsverkehr verwalten, was mit einfacheren Lösungen einfach nicht möglich ist.

BIG-IP bietet umfassendes Anwendungsverkehrsmanagement, das eine vollständige Verkehrsprüfung, -kontrolle und -manipulation umfasst. Dies erstreckt sich sowohl auf die Anforderung als auch auf die Antwort auf Anwendungsebene, wodurch Datenverlust verhindert und der Inhalt der Serverantwort manipuliert werden kann. Diese Funktion hat sich für Tausende von Organisationen als schnelles, zuverlässiges und unschätzbar wertvolles Tool zur Problemlösung erwiesen. Darüber hinaus bietet die vollständige programmgesteuerte Überprüfung und Manipulation des Anwendungsverkehrs Entwicklern eine zusätzliche Architekturebene zur Verbesserung des Anwendungsverhaltens an einem kritischen strategischen Kontrollpunkt.

BIG-IP vs. ELB: Unterschiede im Management

Mit all diesen programmierbaren Fähigkeiten zur Problemlösung geht auch ein gewisser Ballast einher, der berücksichtigt werden muss. Erstens arbeitet BIG-IP auf einer anderen Infrastrukturebene als der klassische AWS Load Balancer und ALB. BIG-IP wird als EC2-Instanz innerhalb Ihres VPC bereitgestellt, was sowohl Vor- als auch Nachteile hat. Durch die Zugehörigkeit zum VPC kann der ADC den Datenverkehr zwischen allen Komponenten innerhalb einer Verfügbarkeitszone effektiv verwalten und gibt Ihnen umfassende Kontrolle über die Kommunikation zwischen den Komponenten im VPC.

Gleichzeitig werden zusätzliche EC2-Instanzen erstellt, die verwaltet und gewartet werden müssen. Die Hochverfügbarkeit dieser Komponente, die zu einer unternehmenskritischen Komponente wird, liegt nun in Ihrer Verantwortung, auch wenn sie einfach zu konfigurieren ist. Die Verwaltung der zugrunde liegenden Plattform im Hinblick auf Software-Updates und die allgemeine Verwaltung wird nicht von AWS, sondern vom Kunden übernommen, während neue Funktionen durch im AWS Marketplace veröffentlichte Versionen bereitgestellt werden und nicht durch im Wesentlichen nahtlose Service-Upgrades.

Und schließlich lässt sich BIG-IP sowohl nach Bedarf als auch automatisch skalieren, aber im Vergleich zur Verwendung eines zentralen AWS-Dienstes fällt fast zwangsläufig ein größerer Konfigurationsaufwand auf den Kunden.

Lastenausgleich auf AWS
Welcher Load Balancer ist der richtige für mich?

Die Wahl der richtigen Lösung für Ihr Unternehmen hängt im Wesentlichen von Ihren Anwendungs- und Plattformanforderungen ab. Einige Anwendungen und Anwendungsfälle eignen sich gut für AWS ELB, während andere die erweiterten Funktionen von BIG-IP erfordern.

Elastischer Lastenausgleich für AWS

ALB ist für Anwendungen konzipiert, die einen einfachen Lastausgleich mit einigen grundlegenden URI-zu-Ziel-Zuordnungsregeln erfordern. ALB bietet die grundlegenden Dienste zur Verkehrsverteilung und Skalierung für viele AWS-native Anwendungen. Wenn Entwickler oder Anwendungsanbieter zur Verfügung stehen, um Sicherheits- oder Funktionsprobleme zeitnah zu beheben – oder das allgemeine Risiko von Sicherheitsverletzungen geringer ist – ist ALB eine naheliegende Wahl.

Für ähnliche Anwendungen, die andere TCP-Protokolle verwenden und robuste, aber einfache Lastausgleichsdienste benötigen, reicht der klassische Lastenausgleich häufig aus.

BIG-IP-Lastausgleich

Es gibt andere Anwendungsfälle, in denen eine Organisation möglicherweise die Leistung eines vollwertigen ADC auf AWS nutzen möchte. Zu den Vorteilen der Verwendung von BIG-IP auf AWS gehören unter anderem:

  • Verbesserte Sicherheit
  • Bessere Verkehrskontrolle
  • Verkehrsoptimierung
  • Echte Programmierbarkeit auf Anwendungsebene

Die Plattformarchitektur von BIG-IP bietet Ihnen vollständige Transparenz und Kontrolle über den Anwendungsverkehr. Mit einer riesigen Palette an Funktionen bietet Ihnen eine BIG-IP-Instanz in Ihrer AWS-Umgebung ein leistungsstarkes Toolkit zur Behebung von Problemen mit der Anwendungsleistung, Sicherheit oder Verfügbarkeit. BIG-IP kann einzelne Anforderungen der Anwendungsebene an jede beliebige weiterleitbare Ressource weiterleiten, von einer lokalen EC2-Instanz oder einer Serverinstanz in einer anderen Cloud an einen API-basierten Dienst oder ein Gerät vor Ort.

Beispielsweise kann ALB den Datenverkehr basierend auf der angeforderten URL an Back-End-Ressourcen weiterleiten. Wenn Sie den Datenverkehr jedoch basierend auf komplexeren Merkmalen (wie Gerätetyp, Verbindungsgeschwindigkeit oder Client-Standort) weiterleiten müssen, ist BIG-IP für diese Aufgabe besser gerüstet.

Diese erweiterte Problemlösungsfunktion ist besonders dann von Bedeutung, wenn Unternehmensanwendungen in die Cloud migriert werden oder wenn Entwickler nicht sofort verfügbar sind, um Anwendungsschwachstellen oder Verhaltensprobleme zu beheben. Wenn Ihre Anwendung dringend Schutz benötigt, bei einem neuen Clienttyp (oder sogar bei einem Wechsel des Client-Betriebssystems) nicht funktioniert oder bei bestimmten Anforderungen abstürzt, bietet BIG-IP häufig eine schnelle, einfache und zuverlässige Lösung.

Ein weiterer wichtiger Faktor ist die Notwendigkeit der Konsistenz zwischen dem Rechenzentrum und der Cloud. Tausende Organisationen verlassen sich auf BIG-IP-Geräte, um kritische Anwendungen in ihren Rechenzentren bereitzustellen. Die AWS BIG-IP Virtual Edition bietet auf AWS dieselben Anwendungsschichtdienste wie auf einem physischen BIG-IP in einem Rechenzentrum. Durch die Verwendung einer BIG-IP VE können Unternehmen Anwendungen schneller, kostengünstiger und zuverlässiger migrieren, während die Mitarbeiter sich auf ihre Umschulungsbemühungen auf andere Bereiche konzentrieren können und das Wissen und die Investitionen des Unternehmens in BIG-IP erhalten bleiben.

Bereitstellungsoptionen

Da es sich um einen nativen Dienst handelt, ist die Bereitstellung von AWS ELB so einfach wie das Aktivieren eines Kontrollkästchens. Um eine BIG-IP VE auf AWS zum Laufen zu bringen, muss die Instanz vom Amazon Marketplace bereitgestellt werden. Dabei kann entweder ein Utility-Billing- oder ein Bring-Your-Own-License-Modell verwendet werden. Die Bereitstellung des BIG-IP-Images kann manuell oder mithilfe von Automatisierungsoptionen wie AWS CFTs verwaltet werden, von denen F5 eine Reihe vollständig unterstützter Vorlagen (sowie einige „experimentelle“) anbietet. Diese sind im F5-Github-Repository verfügbar, das auch ein Python-SDK und andere Tools enthält. Weitere von der Community unterstützte Bereitstellungstools, Playbooks und Dokumentationen sind im F5 DevCentral-Repository verfügbar.

Abschluss

Sowohl AWS ELB als auch F5 BIG-IP bieten Organisationen, die Anwendungen auf AWS bereitstellen, einen überzeugenden Mehrwert. Wenn Sie wissen, wann und wo Sie möglicherweise mehr Kontrolle, Sicherheit oder Programmierbarkeit benötigen, können Sie die richtige Lösung zur Unterstützung Ihrer Anwendungen – und Ihres Unternehmens – in der Cloud auswählen.

Veröffentlicht am 03. November 2017
  • Auf Facebook teilen
  • Teilen mit X
  • Auf Linkedin teilen
  • Teilen per E-Mail
  • Teilen über AddThis

Verbinden mit F5

F5 Labs

Die neuesten Erkenntnisse im Bereich Anwendungsbedrohungsinformationen.

DevCentral

Die F5-Community für Diskussionsforen und Expertenartikel.

F5-Newsroom

Neuigkeiten, F5-Blogs und mehr.