Hochverfügbare Load Balancer

Aus einem Kundenprojekt entstanden in den letzen Tagen zwei Anleitungen für hochverfügbare Load Balancer:

Der Apache Load Balancer ist durch diverse Module wie mod_rewrite und mod_security gegenüber dem Nginx Load Balancer etwas flexibler, dafür benötigt er jedoch bei der selben Anzahl an Sessions mehr Ressourcen.

Die Load Balancer Hosting Produkte lassen sich mit Tomcat Hosting und Datenbank Hosting zu flexiblen Clustern vereinen. Ein paar Beispiele findet man hier:

Durch die Load Balancer können nun bei Lastspitzen flexibel externe Systeme wie Amazon EC2 dazu geschaltet werden. Weiterhin ist damit eine unterbrechungsfreie Wartung des gesamten Clusters möglich.

Datenbank Hosting

Und wieder gibt es neue Pakete für häufig angefragte Dienste:

In Kombination mit Webhosting oder Tomcat Hosting können damit professionelle Anwendungen mit hoher Performance, Verfügbarkeit und Sicherheit betrieben werden.

Ein kleines Beispiel aus der Praxis:

Ein Kunde wünscht eine ausfallsichere DB2 Datenbank mit zirka 10 GB SSD Storage und 100 GB SATA Storage. Die Datenbank wird mit Version 10.1 betrieben und soll durch Multi-Temperature Storage die aktuellen Daten auf SSD’s vorhalten und ältere Daten kostengünstig auf SATA. Die Datenbank soll durch HADR hochverfügbar gemacht werden.

Die Architektur sieht damit wie folgt aus:

datenbank_cluster

Jedem DB2 Host stehen 24 GB RAM und 4 CPU Cores zur Verfügung. Durch SSD’s sind die Antwortzeiten der Datenbank extrem performant. Dank HADR (Log Replikation) im NEARSYNC Modus, ist der maximale Datenverlusst auf wenige Sekunden beschränkt. Im Fehlerfall des aktiven Server, steht der passive Server in sehr kurzer Zeit wieder zur Verfügung.

Die DB2 Lizenzen stellt der Kunde. Für den Betrieb fallen bei aktuell zirka 110 GB Gesamtgröße der Datenbank monatlich zirka 580€ an.

[Update]

Die Dokumentation für diesen Aufbau findet man im Wiki:

Wer DB2 mit HADR und Multi-Temperature Storage unter CentOS aufsetzen möchte, findet hier alle wichtigen Informationen.

Tomcat Hosting

Da in letzter Zeit einige Anfragen zu Tomcat Hosting eingeflattert sind, habe ich mich dazu entschieden, Pakete zu schnüren:

In Kombination mit Load Balancer Hosting und Datenbank Hosting Paketen (z.B. Apache und MySQL), können damit auch High Availability Tomcat Cluster betrieben werden:

Tomcat HA Cluster

In diesem Fall verteilt ein Load Balancer die Anfragen an 3 Tomcat Instanzen, welche die Daten in einer MySQL Datenbank vorhalten. Ein einfaches Cluster mit 3 Tomcat Instanzen ist damit ab zirka 100€ pro Monat zu haben. Der Aufbau kann mit individuellen Komponenten auch jederzeit erweitert werden:

  • Apache Load Balancer als HA-Cluster
  • Hinzufügen von Tomcat Instanzen mit Amazon Web Services für temporäre Lastspitzen
  • MySQL Master/Slave Replikation
  • Cluster Dateisystem
  • Monitoring Dashboard für Operation Center

Anstatt Tomcat kann gegen Aufpreis auch GlassFish genutzt werden. Alle Tomcat Hosting Pakete werden auf Hetzner Root Server betrieben. Auf Wunsch sind auch andere Hoster gegen Aufpreis möglich.