Frage Software http Load Balancer?


Momentan haben wir nur einen Back-End-Server pro Site / Web-Service. Es würde mich interessieren, die Erfahrungen von Menschen mit verschiedenen Load-Balancer-Apps zu hören (etwas, das unter Linux läuft).

Was würden Sie empfehlen?


19
2018-04-30 11:35


Ursprung




Antworten:


Laut Folge 27 des StackOverflow Podcast, die Reddit-Leute scheinen wirklich zu mögen HAProxy. Hier ist eine kurze Anleitung, die zeigt HAProxy wird mit Amazon EC2 verwendet. Sie können viel mehr Informationen im finden HAProxy-Website.


13
2018-04-30 12:12



Ich benutze HAProxy auf einer Reihe von Produktionsservern und liebe es. Es ist einfach zu konfigurieren und hat sogar eine einfache Weboberfläche, um den Status und die Statistiken in Echtzeit zu überprüfen. Ein Screencast, der mir geholfen hat, meine erste Instanz von HAProxz einzurichten, findet sich auf dem [Signal versus Noise Blog] [1] [1]: 37signals.com/svn/posts/1073-nuts-bolts-haproxy - Wes Oldenbeuving
Ich habe den Managability-Aspekt vergessen. Das klingt sehr gut. - Mark Renouf


Die Frage liefert keine spezifischen Informationen über die Last, benötigte Funktionen usw., so dass jede Antwort bestenfalls eine Vermutung ist.

Pfund ist eine gute Wahl für kleinere / mittelgroße Websites. Es bietet HTTPS-Unterstützung und einfache Einrichtung.

HAproxy kann skaliert werden, um 10G-Ethernet-Pipes zu sättigen, und bietet eine Verbindungsbeschränkung, d. h. nur die Anzahl gleichzeitiger Anfragen an jeden Backend-Server zu senden, da Apache-Children- / Ruby-on-Rails-Instanzen behandelt werden müssen.

nginx eignet sich hervorragend als Allround Load Balancer und statischer Dateiserver. Es kann beim Lastenausgleich HTTP-Komprimierung, URL-Neuschreiben und statische Dateibereitstellung durchführen.

Apache  ist in der 2.2-Serie auch ein ziemlich guter Load-Balancer. Kann in etwa dasselbe tun wie nginx, stellt aber eine höhere Belastung für den Server dar als nginx. Sehr sehenswert, wenn Sie bereits mit Apache vertraut und sehr reif sind.

Perlbal Bietet eine einfache Verbindung, die auf Back-End-Hosts beschränkt ist, Multiplexing-Anfragen über persistente HTTP-Verbindungen und einfache Einrichtung, wenn Sie bereits Perl verwenden.

Lack-Cache ist ein Reverse-HTTP-Proxy mit grundlegender Lastausgleichsunterstützung. Es ist kein großartiger Load Balancer, aber in einigen Situationen kann das In-Memory-Caching der meisten angeforderten Objekte einen hohen Prozentsatz der Backend-Server-Hits entfernen und hat eine hervorragende Leistung. ESI-Includes sind potentiell interessant.

Ich bin mir nicht 100% ig sicher, aber Perlbal und nginx bieten etwas Unterstützung, um die Konfiguration zu ändern, ohne den Load Balancer neu zu starten. Für größere Sites ist dies von entscheidender Bedeutung, und es ist eines der Dinge, die gute kommerzielle Load-Balancer-Appliances gut machen.

Alle oben genannten Funktionen sind Lastenausgleicher auf HTTP-Ebene (Ebene 7). TCP / IP-Level-Load-Balancer haben das Potenzial, einen höheren Durchsatz zu erreichen, sind aber auf andere Weise begrenzt. Der HAProxy-Autor hat eine gute, lesbare Übersicht über Lastausgleichsmethoden und -probleme geschrieben: http://1wt.eu/articles/2006_lb/

ICH GEGEN ist ein weit verbreiteter TCP / IP Level Load Balancer. Die meisten Firewalls können auch grundlegenden Lastenausgleich auf IP-Ebene durchführen, indem sie die eingehende Anfrage über eine Reihe von Backend-IP-Adressen hashen - zumindest OpenBSD's PF und Cisco ASA und Juniper Netscreens können dies tun.


21
2018-05-17 23:12






3
2018-04-30 12:02





Haproxy funktioniert gut wie LVS.

FWIW, wordpress.com verwendet nginx als Balancer / Proxy.


3
2018-04-30 12:04





Wir verwenden LVS in der Produktion. Es wird von unserem Operations-Team mit einer Reihe komplexer und böser Skripte verwaltet. Ein ziemlich cleveres maßgeschneidertes System kündigt Gesundheits- und Leistungsdaten von unseren Realservern an, damit der Load Balancer die Gewichte entsprechend einstellen kann.

LVS bietet Ihnen natürlich einen einzigen Fehlerpunkt - den Load Balancer (es gibt Möglichkeiten, diese redundant einzurichten).

Ich dachte, das wäre zu kompliziert, um es zu schreiben, also schrieb ich Fluffy Linux Cluster Das basierte auf der Funktionsweise von Windows NLB (ich denke ... ich bin mir nicht sicher, wie das funktioniert) und wurde auch von CLUSTERIP inspiriert.

Wir verwenden es nicht in der Produktion, aber Fluffy kann eine vernünftige (mindestens 5) Anzahl von Servern ohne einen einzelnen Fehlerpunkt und keinen zentralen Managementknoten etc. ausgleichen.


2
2018-05-17 21:18



Hmm: LVS, böse Drehbücher, ziemlich clevere maßgeschneiderte Systeme. Ihr Setup ist genau wie unseres! - Tom Anderson


Ich habe gebraucht Pfund in der Vergangenheit. Es ist schnell, einfach und erfordert minimale Aufmerksamkeit.


2
2018-05-18 03:19





Ich bin ein großer Fan von Zeus 'ZXTM Multilayer LBs - Click HIER


1
2018-05-17 21:58





Wenn Sie sich für LVS entscheiden, würde ich auch in Keepalived schauen, wenn Sie Ihre Load-Balancing-Serverschicht hochverfügbar machen wollen. Ich hatte Heartbeat / Pacemaker mit LVS für mehrere Monate benutzt und fand es zu kompliziert und manchmal instabil für eine einfache HA LB Schicht.


1
2017-07-09 01:45