Verwenden von CloudFlare als einzigem Load Balancer

7

Angenommen, ich habe 3 VPS-Knoten mit Linode, um den Datenverkehr auf einer einzelnen Website zu bedienen. Linode selbst bietet eine Lösung für den Knotenausgleich .

Aber ich benutze CloudFlare und habe mich gefragt, nachdem ich ihren Blog-Artikel über ihre Architektur gelesen habe, ob es notwendig ist, Linodes Node Balancer zu verwenden, wenn der DNS-Lastenausgleich von CloudFlare dies für mich tun kann.

Gibt es einen Vorteil bei der Verwendung des Linode-Load-Balancers anstelle des DNS-Load-Balancers von CloudFlare?

Masum
quelle

Antworten:

9

Ja, CloudFlare kann Ihren Datenverkehr ausgleichen. Dies wirft jedoch einige Probleme auf, mit denen Sie sich befassen müssen:

  1. CloudFlare bietet nicht automatisch Sticky-Sitzungen an . Dies bedeutet, dass jeder, der zu Ihrer Site geht, für eine Anfrage auf einem Server und für eine andere Anfrage auf einem anderen landen kann. Dies hat Auswirkungen auf Benutzeranmeldungen oder alles, was Serversitzungen erfordert. Es gibt jedoch andere Lösungen dafür, und wenn Sie nur statische Inhalte bereitstellen, ist dies kein Problem.

2. CloudFlare bietet weder ein automatisches Failover noch eine Überwachung der Ursprungsserver. Wenn einer ausfällt, werden Webanforderungen weiterhin an den toten Server geleitet, und Benutzer sehen eine CloudFlare-Fehlerseite. Es gibt jedoch andere Möglichkeiten, diese Überwachung durchzuführen und den ausgefallenen Server aus Ihrem DNS zu entfernen. Siehe Kann CloudFlare ein automatisches Failover auf ein anderes Backend durchführen?

Solange Sie mit den 2 oben genannten Elementen umgehen können, funktioniert es hervorragend. Tatsächlich verwende ich dieses Setup heute für mehrere Websites, die die Startseite von HackerNews überlebt haben.

madflojo
quelle
1
Warum bietet Cloudflare kein "automatisches Failover"? Im Abschnitt "Lastausgleich aktivieren" auf ihrer Website wird ausdrücklich darauf hingewiesen, dass dies der Fall ist. "Schützen Sie sich vor Dienstunterbrechungen durch Lastausgleich, automatisches Failover, geografisches Routing und aktive Integritätsprüfungen für Ihre Ursprungsserver."
Geesu
Zum Zeitpunkt dieser Frage haben sie so etwas nicht angeboten.
Madflojo
1
Ich weiß, dass dies eine alte Antwort ist, dachte aber, dass es eine Erwähnung wert sein könnte, als ich bei einer Google-Suche darauf stieß, dass Cloudflare jetzt Sitzungsklebrigkeit (Sitzungsaffinität) unterstützt. Cloudflare.com/load-balancing
Boardy
1
Jetzt ja! Habe auch eine klebrige Sitzung! support.cloudflare.com/hc/en-us/articles/…
Cornac
1
Diese Antwort ist veraltet: Cloudflare unterstützt jetzt sowohl Sticky Sessions als auch automatisches Failover .
Collimarco
1

Wenn Ihre Website nur statischen Inhalt enthält, reicht der Lastausgleich von Cloudflare aus.

Wenn Ihre Website jedoch über dynamischen Inhalt verfügt, der immer von Ihren Servern bereitgestellt wird, benötigen Sie eine eigene Lösung für den Lastenausgleich, um die Anforderungen an Ihre eigenen Backend-Server zu verteilen.

Tero Kilkanen
quelle
2
Dies hängt wirklich von Ihrem Setup ab. Wenn CloudFlare über nQuelladressen (A / AAAA) verfügt, aus denen abgerufen werden kann, erhalten Sie auf diese Weise auch einen Lastenausgleich von dieser Seite. Die meisten fallen nicht unter diese Kategorie mit vielen externen Adressen, aber es ist definitiv ein gültiges Setup, zumal IPv6-Setups reichlich externe Adressierung bieten.
Nick Craver
Nick, CloudFlare führt Ihre Skripte nicht aus, was in Bezug auf die CPU teuer ist. Aus diesem Grund kann ein eigener Lastausgleich hilfreich sein.
John Auld
1
Nick ist genau hier. Wenn Sie in Cloudflare mehrere A-Einträge für Ihre Ursprungsserver angeben, gehe ich davon aus, dass Cloudflare einen DNS-basierten Lastenausgleich mit diesen Einträgen durchführt. Anschließend kann das OP die IP-Adresse jedes seiner Ursprungsserver an Cloudflare senden.
Tero Kilkanen
Wenn mehrere DNS-Einträge vorhanden sind, wird ein Round-Robin-Szenario erstellt, in dem der Datenverkehr auf mehrere Server verteilt wird, jedoch kein Failover unterstützt wird. Wenn also ein Server ausfällt, ist CloudFlare meiner Meinung nach nicht intelligent genug, um den Datenverkehr auf die verbleibenden Server umzuleiten. (Natürlich hat CloudFlare ein großartiges Failover unter ihren eigenen Servern, sie handhaben es einfach nicht über Ursprungsserver hinweg.)
Simon East