Smartes Load Balancing mit Cloudflare Healthchecks: Effizient, robust und kostengünstig
Katrin Peter 3 Minuten Lesezeit

Smartes Load Balancing mit Cloudflare Healthchecks: Effizient, robust und kostengünstig

Cloudflare ist längst mehr als nur ein CDN-Anbieter. Neben Performance-Optimierung und Sicherheitsfeatures bietet die Plattform zahlreiche Tools, die sich kreativ einsetzen lassen, um individuelle Anforderungen in modernen Infrastruktur-Setups zu lösen – ohne zwangsläufig auf die kostenpflichtigen Enterprise-Features zurückgreifen zu müssen.
cloudflare load-balancing healthchecks haproxy dns-management infrastruktur failover

Cloudflare ist längst mehr als nur ein CDN-Anbieter. Neben Performance-Optimierung und Sicherheitsfeatures bietet die Plattform zahlreiche Tools, die sich kreativ einsetzen lassen, um individuelle Anforderungen in modernen Infrastruktur-Setups zu lösen – ohne zwangsläufig auf die kostenpflichtigen Enterprise-Features zurückgreifen zu müssen.

Bei ayedo haben wir genau das getan: Wir nutzen Cloudflare nicht nur für DNS-Management und Traffic-Proxys, sondern auch für ein eigenes Load-Balancing-Konzept – ohne die offiziellen Load-Balancer-Features von Cloudflare zu verwenden, und das mit beeindruckender Kosteneffizienz.

Ausgangslage: Verteilte Infrastruktur mit HAProxy-Workern

Unsere Architektur basiert auf fünf unabhängigen HAProxy-Workern, die den eingehenden Traffic verarbeiten. Die Anfragen der User werden durch Cloudflares Reverse-Proxy (die berühmte orangene Wolke) entgegengenommen und gleichmäßig über die IP-Adressen der Worker verteilt.

Die Herausforderung: Was passiert, wenn ein Worker ausfällt?

Ohne intelligentes Routing würde Cloudflare weiterhin Traffic an eine IP senden, die nicht erreichbar ist – mit entsprechenden Auswirkungen auf die Erreichbarkeit und Performance. Die logische Lösung wäre, das Load-Balancing-Feature von Cloudflare zu nutzen. Doch genau dieses Feature wird nach Anzahl der DNS-Queries abgerechnet – eine teure Option bei hohem Trafficvolumen.

Die Herausforderung: Failover und Verfügbarkeit ohne Kostenexplosion

Ein Ausfall eines Workers bedeutet, dass die dazugehörige IP manuell oder automatisiert aus der DNS-Zone entferntwerden muss. Ziel war es daher, ein System zu etablieren, das:

  • zuverlässig erkennt, wenn ein Worker offline geht,
  • automatisch auf diesen Status reagiert,
  • und gleichzeitig keine laufenden Kosten pro DNS-Query verursacht.

Unsere Lösung: Smarte Healthchecks statt teures Load Balancing

Die Lösung basiert auf einer Kombination aus Cloudflare Healthchecks, Webhooks, cloudflared und einem von uns entwickelten Custom-Controller zur DNS-Verwaltung. Und das Beste daran: Alles funktioniert mit dem Cloudflare Pro Plan ($20/Monat).

So funktioniert’s im Detail:

  1. Healthchecks überwachen die Verfügbarkeit der Worker:

    Cloudflare prüft in regelmäßigen Intervallen, ob jeder einzelne Worker erreichbar ist. Diese Funktion ist Teil des Pro-Plans und lässt sich für jede IP-Adresse separat konfigurieren.

  2. Webhook-Benachrichtigung bei Ausfall:

    Sobald ein Healthcheck fehlschlägt, wird ein definierter Webhook ausgelöst. Dieser Webhook läuft über einen Cloudflare Tunnel (cloudflared) und erreicht unsere Infrastruktur sicher und direkt.

  3. Custom-Controller reagiert auf Healthcheck-Events:

    Unser eigener Controller empfängt die Benachrichtigung und entfernt die betroffene IP-Adresse automatisiert aus der DNS-Zone – vollständig API-gesteuert. Damit wird verhindert, dass Cloudflare weiteren Traffic an diesen Worker sendet.

  4. Wiederherstellung bei Rückmeldung:

    Sobald Cloudflare den nächsten erfolgreichen Healthcheck meldet, erkennt unser Controller die Wiederverfügbarkeit und reintegriert die IP-Adresse automatisch. Der Traffic fließt wieder wie gewohnt über alle verfügbaren Worker.

Near-Realtime Reaktion durch DNS mit Proxy-Modus

Dank der Cloudflare-Proxys (orange Cloud aktiviert) werden Änderungen an den DNS-Einträgen nahezu in Echtzeitwirksam. Es gibt keine Wartezeit durch TTLs oder Caching – die Umleitung auf die aktiven Worker erfolgt unmittelbar nach der Anpassung.

Ergebnis: Ausfallsicherheit ohne Zusatzkosten

Diese Architektur bringt mehrere Vorteile mit sich:

  • Hohe Verfügbarkeit durch automatische Umschaltung bei Ausfällen
  • Minimale Betriebskosten, da kein Load-Balancing-Feature gebucht werden muss
  • Flexibilität durch den komplett eigenen Controller
  • Einfache Skalierbarkeit, da zusätzliche Worker nur durch Healthcheck-Definition und DNS-Ergänzung eingebunden werden müssen

Ausblick: Von der internen Lösung zum Service

Was bei ayedo zunächst als interner Optimierungsansatz entstand, entwickelt sich zunehmend zu einer skalierbaren Plattformkomponente. Perspektivisch planen wir, diese Lösung als eigenständigen, leicht integrierbaren Service anzubieten – speziell für Unternehmen, die hohe Verfügbarkeit brauchen, aber nicht bereit sind, Load-Balancing zu überteuerten Query-Kosten einzukaufen.

Fazit

Cloudflare bietet ein mächtiges Toolkit – vorausgesetzt, man nutzt es kreativ. Unser Setup zeigt, dass sich selbst komplexe Aufgaben wie Load Balancing mit intelligenter Automatisierung und API-First-Denken lösen lassen, ohne sich in teure Abrechnungsmodelle einzukaufen.

Wir setzen auf robuste, transparente und kosteneffiziente Lösungen – und genau diese Philosophie steckt in unserem Ansatz.


Ähnliche Artikel