Cloud Load Balancer
Maximieren Sie die Verfügbarkeit Ihrer Infrastruktur und Leistung mit DevStorage's Cloud Load Balancer.
Der Cloud Load Balancer von DevStorage verteilt eingehende Anfragen gleichmäßig über Ihre Cloud-Infrastruktur, sodass Sie die Leistung für Benutzer maximieren und die höchste Verfügbarkeit für Ihre Umgebungen aufrechterhalten können.
- Leistungsstarke Lastenverteilung
- Sekundenschnelle Bereitstellung
- Verwaltung über Kundenportal oder API
- Abrechnung auf Stunden- & Periodenbasis
Beschreibung
Ein Load Balancer ist ein Gerät, das als Reverse Proxy fungiert und den Netzwerk- oder Anwendungsverkehr auf eine Reihe von Servern verteilt. Load Balancer werden eingesetzt, um die Kapazität (für gleichzeitige Benutzer) und die Zuverlässigkeit von Anwendungen zu erhöhen. Sie verbessern die Gesamtleistung von Anwendungen, indem sie die Server entlasten, die mit der Verwaltung und Aufrechterhaltung von Anwendungs- und Netzwerksitzungen und der Durchführung anwendungsspezifischer Aufgaben betraut sind.
Load Balancer werden im Allgemeinen in zwei Kategorien unterteilt: Schicht 4 und Schicht 7. Layer-4-Load-Balancer arbeiten mit Daten, die in Netzwerk- und Transportschichtprotokollen (IP, TCP, FTP, UDP) enthalten sind. Layer-7-Load-Balancer leiten Anfragen auf der Grundlage von Daten weiter, die in Protokollen der Anwendungsschicht (z. B. HTTP) enthalten sind.
Technik
Der Lastausgleich ist für moderne Anwendungen unerlässlich. Er sorgt für zuverlässige Leistung und Verfügbarkeit, indem er den Netzwerkverkehr auf mehrere Server verteilt. Load Balancer bieten auch zusätzliche Funktionen wie Anwendungssicherheit und Überwachung.
Nehmen wir zum Beispiel eine Webanwendung, die in der Cloud gehostet wird und auf einer einzigen virtuellen Maschineninstanz läuft. Wenn der Benutzerverkehr (Traffic) zunimmt, reagiert die Anwendung nicht mehr und steht den Benutzern zunehmend nicht mehr zur Verfügung. Wenn die Anwendung auf mehreren Instanzen hinter einem Load Balancer läuft, kann sie viel mehr Datenverkehr bewältigen und automatisch skalieren, wenn die Nachfrage steigt.
DevStorage bietet daher einen Software-Load-Balancer, der auf Millionen von Verbindungen mit jeder Kombination von TCP/SSL- und UDP-Protokollen skaliert werden kann. Neben der Verteilung von Arbeitslasten auf viele Instanzen bietet der Load Balancer von DevStorage erweiterte Funktionen wie Sitzungsaffinität, Content Switching, Zustandsprüfungen und mehr. Der DevStorage Load Balancer bietet externe Konnektivitätsoptionen wie statische IP-Adressen, SSL-Terminierung und Protokollweiterleitung.
Mit dem DevStorage Cloud Load Balancing Service können Sie Ihren eingehenden Datenverkehr nach verschiedenen Kriterien wie HTTP-Anfrageattributen oder dem geografischen Standort Ihrer Nutzer (sog. regionaler Datenverkehr) auf Ihre Instanzen verteilen. Dies führt zu einer optimalen Verteilung der Nutzeranfragen an Ihre Anwendungen, unabhängig von Standort oder Region.
Aufbau
Ein Load Balancer ist ein Gerät, das zusätzliche Kapazität bietet, indem es den Datenverkehr auf zwei oder mehr Server verteilt. Er wird verwendet, um die Arbeitslast gleichmäßig zu verteilen, um eine Überlastung zu vermeiden und sicherzustellen, dass ein einzelner Server nicht überlastet wird.
Der Load Balancer nimmt den eingehenden Datenverkehr entgegen und verteilt ihn mit verschiedenen Methoden auf eine Reihe von Backend-Servern. Ein Load Balancer kann entweder hardwarebasiert (eine Hardware-Appliance) oder softwarebasiert (eine Softwareanwendung) sein.
Wenn Sie Datenverkehr an Ihren Load Balancer senden, verwendet er eine Reihe von Regeln, die als Routing-Algorithmus bekannt sind, um zu bestimmen, wohin der Datenverkehr gesendet werden soll. Verschiedene Load Balancer verwenden unterschiedliche Methoden, um zu entscheiden, wie der Datenverkehr weitergeleitet werden soll. Die gängigsten Routing-Algorithmen sind:
Round-Robin Die Anfragen werden nacheinander auf die Servergruppe verteilt. Die erste Anfrage wird an den ersten Server gesendet, die zweite Anfrage an den zweiten Server usw.
Geringste Anzahl von Verbindungen Eine neue Anfrage wird dem Server zugewiesen, der derzeit die wenigsten aktiven Verbindungen hat. Wenn ein Server anfängt, mit Anfragen überlastet zu werden, erhalten die anderen Server zusätzliche Anfragen, bis dieser Server genügend Ressourcen hat, um sie zu bearbeiten.
Sicherheit
Load Balancing spielt eine wichtige Rolle für die Sicherheit, da die Datenverarbeitung immer mehr in die Cloud verlagert wird. Die Off-Loading-Funktion eines Load Balancers schützt die dahinterstehende Infrastruktur vor DDoS-Angriffen (Distributed Denial-of-Service). DDoS-Angriffe machen einen großen Teil der Cyberkriminalität aus, da ihre Zahl und ihr Ausmaß ständig zunehmen. Hardware-Schutzmaßnahmen, wie z. B. eine Perimeter-Firewall, können kostspielig sein und erfordern einen hohen Wartungsaufwand. Software-Load-Balancer mit Cloud-Offload bieten einen effizienten und kostengünstigen Schutz dagegen.
Load Balancing und SSL
Sie können die SSL-Terminierung für Ihren Load Balancer konfigurieren. SSL-Terminierung ist der Prozess, bei dem ein Load Balancer den über eine HTTPS-Verbindung empfangenen Datenverkehr entschlüsselt und erneut verschlüsselt, bevor er ihn an einen Back-End-Dienst weiterleitet. Diese Art von Verhalten ermöglicht es Ihnen, Ihre Anwendungsserver hinter dem Load Balancer zu platzieren, ohne dass sie sich um die Ent- und Verschlüsselung kümmern müssen, was ihre Leistung und Skalierbarkeit verbessert.
Darüber hinaus bietet der DevStorage Cloud Load Balancer SSL-Terminierung ohne zusätzliche Kosten. SSL-Terminierung bedeutet, dass der Load Balancer den eingehenden Datenverkehr entschlüsselt, bevor er ihn an Ihre Anwendungsserver weiterleitet. Dies verbessert die Leistung, da es Ihren Anwendungsservern die für die Entschlüsselung erforderlichen CPU-Zyklen erspart.
Die SSL-Terminierung ermöglicht es dem Load Balancer, den eingehenden SSL-Datenverkehr zu entschlüsseln. Der Inhalt wird dann im Klartext an die Webserver gesendet. Die Webserver senden ihre Antworten ebenfalls im Klartext an den Load Balancer. Der Load Balancer kann dann die Antworten verschlüsseln, bevor er sie an den Client zurückschickt.
Die SSL-Terminierung stellt jedoch ein Sicherheitsproblem dar. Der Datenverkehr zwischen den Load Balancern und den Webservern ist nicht mehr verschlüsselt. Dies kann die Anwendung einem potenziellen Angriff aussetzen. Das Risiko ist jedoch geringer, wenn sich der Load Balancer im selben Netz wie die Endserver befinden.
Eine andere Lösung ist SSL-Passthrough. Der Load Balancer leitet einfach eine verschlüsselte Anfrage an den Endserver weiter. Der Endserver führt dann die Entschlüsselung durch. Dies verbraucht mehr CPU-Leistung auf dem Endserver. Für Unternehmen, die zusätzliche Sicherheit benötigen, kann sich dieser Mehraufwand jedoch lohnen.