Einführung
HAProxy ist der weltweit führende Open-Source Loadbalancer und Reverse-Proxy für TCP- und HTTP-basierte Anwendungen. Er wird von Unternehmen aller Größenordnungen eingesetzt, um eingehenden Netzwerkverkehr zuverlässig, performant und hochverfügbar auf Backend-Systeme zu verteilen. Mit steigenden Anforderungen an Ausfallsicherheit und unterbrechungsfreien Betrieb wächst der Bedarf an professionell verwalteten Loadbalancer-Lösungen.
Der Managed Service Application - HAProxy Loadbalancer Cluster bietet einen betriebsfertigen, hochverfügbaren Cluster auf Basis von HAProxy CE und Corosync. managedhosting.de übernimmt Bereitstellung, Konfiguration, laufenden Betrieb und Sicherheitsupdates der gesamten Infrastruktur.
Merkmale des Services
- Rollout und Konfiguration: Der Service beinhaltet die Bereitstellung und Konfiguration von zwei für den Betrieb von HAProxy optimierten virtuellen Maschinen im Rahmen von Managed vCloud. Beide Nodes bilden gemeinsam einen hochverfügbaren Cluster.
- Individuelle Unterstützung bei der Dimensionierung: Kunden erhalten individuelle Unterstützung bei der Dimensionierung, um sicherzustellen, dass die HAProxy-Infrastruktur optimal auf Lastprofile und Verfügbarkeitsanforderungen zugeschnitten ist.
- Optimiertes und gehärtetes Betriebssystem: Rocky Linux 9 oder 10 wird als gehärtetes Betriebssystem vorinstalliert und konfiguriert bereitgestellt. Das System ist auf den Betrieb von HAProxy optimiert und entspricht den Anforderungen des Managed Service Pakets.
- HAProxy Community Edition - aktuelle Stable LTS Version: Der Service verwendet die aktuelle Stable LTS-Version der HAProxy Community Edition. LTS-Branches erhalten über ihren gesamten Lebenszyklus Fehlerbehebungen und Sicherheitskorrekturen. Die jeweils aktuellste Patch-Version wird zeitnah eingespielt.
- Hochverfügbarer Cluster auf Basis von Corosync: Beide Cluster-Nodes werden durch Corosync koordiniert. Corosync überwacht den Zustand jedes Nodes und steuert automatisches Failover. Ein ausgefallener Node wird ohne manuelle Eingriffe aus dem Cluster entfernt. Sobald er wieder verfügbar ist, nimmt er automatisch am Cluster teil.
- Updates im laufenden Betrieb (Rolling Updates): Die Cluster-Architektur ermöglicht sequentielle Updates ohne Unterbrechung des Dienstes. Ein Node wird aktualisiert, während der andere den Traffic weiterhin bedient. Nach erfolgreichem Abschluss wechselt die Rolle und der zweite Node wird aktualisiert.
- Vorinstallierter und konfigurierter Loadbalancer: Ein betriebsfertig vorinstallierter und konfigurierter HAProxy wird bereitgestellt. Die Konfiguration umfasst Frontend-Definitionen, Backend-Gruppen, Health-Checks sowie Load-Balancing-Algorithmen entsprechend den Kundenanforderungen.
- Anpassung der Konfiguration: Die Konfiguration wird an die individuell gewählte Ressourcenausstattung und die Backend-Topologie des Kunden angepasst, um optimale Lastverteilung und maximale Verfügbarkeit zu gewährleisten.
- Webbasierte Statistiken und Monitoring-Dashboard: Der Kunde erhält Zugriff auf das integrierte HAProxy-Statistik-Interface. Es zeigt Echtzeit-Metriken zu Verbindungen, Anfragen, Backend-Zustand und Fehlerraten. Das Interface ist passwortgeschützt und nur von freigeschalteten IP-Adressen erreichbar. Eine Demo des Statistik-Interfaces ist unter http://demo.haproxy.org/ einsehbar.
- HATop - Interaktiver Client für HAProxy: Vorinstalliert ist HATop, ein interaktiver ncurses-basierter Echtzeit-Client für HAProxy. HATop zeigt Gesundheitsstatus, Session-Statistiken, Traffic-Metriken, HTTP-Kennzahlen und Fehlerzähler aller konfigurierten Proxies und Services in fünf wechselbaren Anzeigemodi. Über ein integriertes CLI ermöglicht HATop direkte administrative Eingriffe auf den HAProxy-Unix-Socket, z. B. Server in Wartungsmodus versetzen, Gewichtungen anpassen oder Verbindungen kontrollieren, ohne den laufenden Betrieb zu unterbrechen.
- Sicherheit durch TLS-Verschlüsselung: Die Kommunikation zwischen Clients und HAProxy sowie zwischen HAProxy und den Backend-Systemen erfolgt wahlweise über TLS-verschlüsselte Kanäle. Zertifikate werden auf der Basis von Let's Encrypt automatisch verwaltet und rechtzeitig erneuert. Sollen organisationsvalidierte Zertifikate eingesetzt werden, bedarf das der gesonderten Abstimmung.
- Monitoring der korrekten Funktion: Im laufenden Betrieb wird die korrekte Funktion des Clusters anhand diverser Parameter überwacht. Dazu gehören Clustergesundheit, Node-Status, HAProxy-Prozess, Backend-Health-Checks, CPU-Auslastung, Arbeitsspeicher, Partitionsfüllstand sowie Netzwerkverkehr auf allen NICs. Bei Überschreiten definierter Schwellwerte erfolgt Alarmierung per E-Mail und/oder SMS.
- Desaster-Recovery-Backup: Das Cluster Setup sowie jede Konfigurationsänderung werden journalisiert und versioniert gesichert.
- Sicherheitsupdates und Feature-Updates: Sicherheitsupdates für Betriebssystem und HAProxy werden als Rolling Update ohne Betriebsunterbrechung eingespielt. Feature-Updates erfolgen nach Kundenanforderung und Abstimmung.
- Kostenfreier Datentransfer: Kunden erhalten kostenfreien Datentransfer zwischen dem HAProxy-Cluster und anderen Servern in einem geschützten privaten Kundennetzwerk.
Voraussetzungen
Der Managed Service Application - HAProxy Loadbalancer Cluster ist eine Kombination verschiedener Managed Services, die obligatorisch gemeinsam beauftragt werden müssen:
| Service / Komponente |
Cluster Node A |
Cluster Node B |
Bemerkung |
| Managed Service Application |
HAProxy LB Cluster |
HAProxy LB Cluster |
|
| Managed Service Paket |
basic |
basic |
Pro Node |
| Service Level |
Professional |
Professional |
|
| Managed vCloud VM |
✓ |
✓ |
Je Node |
| Betriebssystem |
Rocky Linux 9 oder 10 |
Rocky Linux 9 oder 10 |
|
| HAProxy Community Edition |
Aktuelle LTS Version |
Aktuelle LTS Version |
Immer aktuelle Patch-Version |
| Corosync Cluster-Software |
✓ |
✓ |
Koordination & Failover |
Zugriff auf das System
Der Kunde erhält einen eigenen SSH-Nutzer, der es ihm ermöglicht, sich von einer oder mehreren definierten IP-Adressen oder IP-Adressbereichen per SSH auf die virtuellen Maschinen (VMs) zu verbinden. Über diesen Zugang kann der Kunde die HAProxy-Konfiguration einsehen und im vorher abgestimmten Rahmen verwalten.
Details des SSH-Zugriffs
- SSH-Nutzer: Der Kunde erhält einen individuell konfigurierten SSH-Nutzer.
- IP-Adressen / Adressbereiche: Der Zugriff ist von definierten IP-Adressen oder IP-Adressbereichen möglich.
- HAProxy-Verwaltung: Der Kunde kann über SSH auf die HAProxy-Konfigurationsdateien zugreifen sowie auf das Statistik-Interface zugreifen.
- Zusätzliche SSH-Nutzer: Auf Wunsch können weitere nicht-privilegierte SSH-Nutzer angelegt werden.
- Kein Root-Zugriff: Root-Zugriff auf die VMs ist nicht möglich. Kritische Systembereiche sind damit vor unbeabsichtigten Änderungen geschützt.
- Statistik-Interface: Das HAProxy-Webstatistik-Interface ist für den Kunden über einen passwortgeschützten HTTPS-Zugang erreichbar.
Verantwortlichkeiten
Verantwortlichkeiten des Anbieters
- Härtung, Installation und initiale Konfiguration: Der Anbieter übernimmt die Härtung des Betriebssystems und von HAProxy sowie deren Installation und initiale Konfiguration, einschließlich Corosync-Cluster-Setup.
- Sicherheitsupdates: Sicherheitsupdates für Betriebssystem und HAProxy werden als Rolling Update ohne Betriebsunterbrechung durchgeführt. Feature-Updates erfolgen manuell nach Aufforderung durch den Kunden.
- Clusterüberwachung und Failover: Der Anbieter überwacht den Clustergesundheitszustand und stellt sicher, dass automatisches Failover korrekt konfiguriert ist.
- Zertifikatsverwaltung: Let's Encrypt basierte TLS-Zertifikate werden vom Anbieter verwaltet und rechtzeitig erneuert.
- Desaster Recovery Backup: Der Anbieter übernimmt das Backup der VMs, um diese im Falle eines Totalverlustes wiederherstellen zu können.
Verantwortlichkeiten des Kunden
- Definition der Backend-Systeme: Der Kunde ist verantwortlich für die Benennung und Pflege der Backend-Server, auf die der Loadbalancer den Traffic verteilen soll.
- Anforderung von Konfigurationsänderungen: Änderungen an der HAProxy-Konfiguration (z. B. neue Backends, geänderte ACLs, angepasste Health-Checks) werden vom Kunden über das Ticketsystem beauftragt.
- Anforderung von Updates: Der Kunde fordert beim Anbieter Updates an, die über reguläre Sicherheitsupdates und Patches hinausgehen.
- Verfügbarkeit der Backend-Systeme: Der Anbieter ist nicht verantwortlich für die Verfügbarkeit oder Korrektheit der Backend-Systeme, auf die HAProxy den Traffic weiterleitet.
Wichtiger Hinweis
Der Anbieter übernimmt nicht die Aufgaben eines Netzwerk- oder Applikationsarchitekten. Typische Aufgaben, die der Kunde selbst verantwortet:
- Design der Lastverteilungsstrategie und Auswahl geeigneter Algorithmen entsprechend der vom Kunden eingesetzten Backend-Applikation
- Definition von ACLs und inhaltsbezogenem Routing
- Konfiguration und Betrieb der Backend-Dienste
- Sicherstellung der Netzwerkkonnektivität zwischen HAProxy und Backends
- Applikationsseitige SSL-Terminierung oder End-to-End-Verschlüsselung
- Lasttest und Kapazitätsplanung für Backend-Systeme
Durch die klare Aufteilung der Verantwortlichkeiten zwischen Anbieter und Kunde wird sichergestellt, dass der Cluster sicher und zuverlässig betrieben wird, während der Kunde die volle Kontrolle über seine Lastverteilungslogik behält.
Zusammenfassung
Der Managed Service Application - HAProxy Loadbalancer Cluster bietet Unternehmen eine zuverlässige, hochverfügbare und skalierbare Möglichkeit, eingehenden Netzwerkverkehr professionell zu verteilen. Dank des Corosync-basierten Clusters mit Rolling-Update-Fähigkeit sind sowohl Hochverfügbarkeit als auch unterbrechungsfreie Wartung gewährleistet. managedhosting.de übernimmt alle betrieblichen Aufgaben rund um Bereitstellung, Sicherheit und Betrieb des Clusters, sodass sich der Kunde vollständig auf seine Applikationen konzentrieren kann.
Weiterführende Informationen
Weiterführende Dokumentation und Ressourcen zu HAProxy: