Load-Balancer-Optionen [geschlossen]

25

Ich prüfe eine Reihe möglicher Optionen für den Lastenausgleich.

Bisher beschränke ich mich auf folgende Optionen:

  • DNS-Server-Lastenausgleich, der auf einen Cluster von Tomcat-Servern mit Terrakotta für die Sitzungsreplikation verteilt wird. Vorteile - Sie müssen kein neues Kit kaufen. Nachteile - DNS lb kann die Weiterleitung zu einem kaputten Server fortsetzen.

  • Hardware Load Balancer, direkt zum Cluster von Tomcat-Servern. Profis - zweite Box für Failover haben lb. Cons - Kosten.

  • Apache Server Load-Balancer. Pros - £ -Umfragen von Apache nach kaputten Servern. Der Cons-Apache-Server ist ein Single-Point-of-Failure-Server. Außerdem muss ein weiterer Server gekauft werden.

Gibt es noch andere Optionen, die ich in Betracht ziehen sollte?

Vielen Dank.

Update: Vielen Dank für alle bisherigen Antworten. Ich akzeptiere noch keine Antwort, damit weitere Ideen kommen.

Toolkit
quelle
Welche Betriebssystemplattform?
Spoulson
Für S / W-Load-Balancer wird Linux
Toolkit
Die in den Netzwerklastenausgleich eingebauten Fenster sind auch für den billigen Lastenausgleich nicht schlecht. Aber persönlich würde ich sagen, wenn es dir Geld wert ist, kaufe einen F5.
Sclarson
Welche Art von Sitzungsaffinität benötigen Sie, wenn Sie keine Terrakotta machen? Cookie-basiert, Header-basiert, IP?
sh-beta
@ sh-beta - Ich denke, es hängt von der Implementierung ab?
Toolkit

Antworten:

7

Ich würde nicht für DNS-basierte Pfund gehen - genau aus dem Grund, den Sie auflisten.

nginx oder lack kann Ihre andere £ / Failover-Option sein, die vor appservs steht und als Reverse-Proxy fungiert. Sie erfordern mehr Pflege als die Hardware-Box, sparen aber eine Menge Geld. Stellen Sie sicher, dass Sie diese Balancer auch in einen Cluster einfügen [Aktiv-Passiv mit Herzschlag reicht aus ].

pQd
quelle
11

Wenn Sie sich Load Balancer-Appliances ansehen, können Sie mit F5 Big-IP wirklich nichts falsch machen

Bearbeiten: Der Grund, warum ich sage, dass Sie sich für Big-IP entscheiden, ist, dass es eine nette Appliance für Serveradministratoren ist, die nicht viel Erfahrung mit Netzwerk-Appliances haben. Es hat eine schöne Weboberfläche mit nahezu unbegrenzten Optionen für Konfiguration und Berichterstellung. Sie sind die zuverlässigsten und kostengünstigsten Lastausgleichsoptionen für Unternehmen.

Hier ist ein Link zu einer Studie zu Anwendungsbereitstellungsoptionen im Jahr 2007: Gartner-Ergebnisse

Sclarson
quelle
1
Ich mag die F5 Big-IPs. Es ist auch großartig, die SSL-Beschleunigung zu handhaben, damit die Webserver nur mit einfachem HTTP umgehen können.
Chris W. Rea
Ich würde dem zustimmen, obwohl es das Beste ist, sich von den neuesten Updates, die ich finde, fernzuhalten, wenn Sie eine große Operation ausführen.
mryan1
Wir betreiben eine große Organisation, ich bin mir nicht sicher, was die neuesten Updates mit F5 zu tun haben.
Sclarson
+1 für die Big-IPs. Sie arbeiten einfach. Wenn Sie etwas zwischen Ihre Benutzer und Ihre Server stellen, muss es kugelsicher sein.
Brent Ozar
6

Ich schlage vor, HAProxy zu verwenden . Das geht extrem schnell. Sie können Single Point of Failure auch umgehen, indem Sie zwei Loadbalancer mit CARP (* BSD) oder UCARP / LVS (Linux) verwenden.

SaveTheRbtz
quelle
4

Wir verwenden Coyote Point Equalizer (Hardware Load Balancer) seit Jahren und sind sehr zufrieden mit ihnen. Sie haben vielleicht nicht alle Funktionen eines F5, aber sie haben immer noch viele Funktionen und sie kosten viel weniger. Leistung und Zuverlässigkeit waren beide hervorragend.


quelle
+1 dafür. Wir haben auch ein Paar Kojoten hier, sie sind seit mehreren Jahren in Betrieb und summten immer noch mit.
Seth
3

Ich tendiere dazu, Hardware-LBs zu wählen, da diese oft sehr viel Verkehr bewältigen, häufig "einfacher" sind, besser / einfacher gehärtet werden können und manchmal auch andere Sicherheitsprobleme wie SYN-Flood-Angriffe in Hardware bewältigen können. Ich benutze Foundry, aber es gibt jede Menge Auswahlmöglichkeiten (F5, Cisco usw.) - allerdings teuer :(

Chopper3
quelle
1

Der Cisco GSS (Global Site Selector) ist ein DNS-Server, der auch Integritätsprüfungen durchführt. Dies ist offensichtlich eine teurere Option als ein Standard-DNS-Server. Webseite mit weiteren Details hier: http://www.cisco.com/en/US/products/hw/contnetw/ps4162/index.html

F5 has similar offerings:  http://www.f5.com/products/ 
Cisco ACE product page: http://www.cisco.com/en/US/products/ps8361/index.html

Wie in Chopper3 bereits erwähnt, bietet der hardwarebasierte Lastausgleich wahrscheinlich eine höhere Leistung, die Sie jedoch bezahlen müssen.

Zu den Funktionen, nach denen Sie suchen können, gehören: SSL-Offloading, VLAN-Unterstützung, Kontexte, Clustering, Unterstützung für Routing-Protokolle und Unterstützung / Interaktion mit verschiedenen Anwendungen (z. B. HTML-Cookies und Header-Änderung).

Peter
quelle
1

Hast du dir ldirectord angesehen ?

Es läuft unter Linux, kann mit Herzschlag auf denselben Rechnern ausgeführt werden, auf denen es Lastenausgleich betreibt (und verfügt daher über eine gewisse Redundanz) - oder natürlich, auf einer eigenen Box vor sich, ist es einfach zu konfigurieren, leicht und sehr leistungsfähig .

Brent
quelle
1

Ich fand, dass Kreuzung ein ausgezeichneter Lastausgleich war. Es hat unsere Produktionslast für gut sieben Monate bewältigt, während die Netzwerk-Leute ein Hardware-Problem mit einem Cisco Load Balancer behoben haben.

Jonathan
quelle
0

Ich habe einen softwarebasierten Load Balancer geschrieben, für den kein separater Computer erforderlich ist.

Der Nachteil ist, dass es nicht wirklich produktionsbereit ist - aber wenn Sie es in Ihrem Testnetzwerk testen möchten, würde ich mich freuen.

Fluffy Cluster ist da

Es ist im Grunde genommen der NLB von Microsoft (glaube ich) oberflächlich ähnlich - obwohl ich ihre Quelle nicht habe und nicht genau weiß, wie ihre funktioniert.

Natürlich überwachen wir die Anwendungsebene nicht automatisch, aber Sie können etwas schreiben, das dies tut, und die Gewichtung ändern oder Knoten entsprechend entfernen.

EDIT: Sie haben nicht gesagt, welches Betriebssystem, Fluffy Cluster ist im Moment nur Linux.

MarkR
quelle
Sieht gut aus. Ich würde gerne ClusterIP verwenden, aber es ist noch nicht produktionsbereit und es gibt zu viele Fallstricke. Haben Sie Pläne, Fluffy Cluster für die Produktion vorzubereiten?
Diq
Wenn es Interesse gibt, werde ich es tun. Für eine Version mit eingeschränkten Funktionen ist relativ wenig Arbeit erforderlich.
MarkR
0

keepalived ist ein weiterer Linux-Load-Balancer, der (offensichtlich) mehrere Load-Balancing-Algorithmen und VRRP unterstützt, um redundante Instanzen mit automatischem Failover zu erstellen, wenn eine Load-Balancer-Box ausfällt

Sander Rijken
quelle
0

Wenn Geld keine Rolle spielt, besorgen Sie sich einen Hardwarelastausgleicher.

Die Firma, für die ich arbeite, verwendet Apache, um unsere Tomcat-Server zu betreuen, und der Load Balancer befindet sich auf derselben Box wie einige der Tomcats (Tomcats verwenden interne Ports). Wir werden bald auf eine dedizierte Load-Balancer-Box umsteigen. Wir werden jedoch in Kürze zu Nginx wechseln. Ich finde die Konfiguration einfacher und das Ganze viel leichter als Apache. Abhängig von Ihrer Netzwerkarchitektur empfehle ich Ihnen außerdem, eine interne "Floating IP" für den Load Balancer zu verwenden und so etwas wie Heartbeat auszuführen, um die IP bei Bedarf auf eine andere Box umzustellen. Das würde Failover-Fähigkeiten hinzufügen, ohne sich um DNS-Weitergabeprobleme zu kümmern.

Ahanson
quelle
0

Ich habe eine Lösung mit DNSMadeEasy eingerichtet . Sie haben einen schönen Screencast zu DNS-Failover. Sie haben vernünftige Preise. In unserem System haben wir einen einfachen Dienst implementiert, der die verschiedenen Komponenten in unserem System "pingt" (Datenbank, JMS-Warteschlange, S3-Verbindung) und OK zurückgibt, den DNSMadeEasy verwenden kann. Wenn eine Ausnahme auftritt, entfernt DNSMadeEasy diesen Server aus der Liste der Server, die bei dieser DNS-Suche antworten.

Tronda
quelle
0

Hast du dir perlbal angesehen?

www.danga.com/perlbal/

Reich
quelle
0

Hallo @toolkit, haben Sie jemals NGinX / Varnish in Ihre LoadBalancer (LB) -Quest implementiert? Wenn ja, was waren Ihre Ergebnisse? (wenn es dir nichts ausmacht, mit uns anderen zu teilen ;-)

Nur um das Obige zusammenzufassen (und eine Erwähnung für ZMQ einzureichen)

Grundlegender Lastenausgleich

Fortgeschrittener

Nelson
quelle