Freitag, den 04. Mai 2012

Hochverfügbares Setup aus 2 Webservern mit Lastenverteilung

Hochverfügbares Cluster aus 2 Servern

Mit Hilfe von Dual-Primary-DRBD®, Heartbeat und Varnish nutzt folgendes Setup im Regelbetrieb alle vorhandene Ressourcen, bleibt aber verfügbar, wenn ein System ausfällt oder wegen Wartungsarbeiten offline ist.

Wer für seine Webseiten einen dezidierten Server benötigt kommt meistens nicht darum herum dem System ein gleichwertiges zur Seite zu stellen um das erste System hochverfügbar zu halten. Wenn zur Sicherheit eh zwei Systeme benötigt werden, bietet es sich an daraus ein Cluster zu bauen, dass im Alltag die Last auf beide Systeme verteilt.

1) Loadbalancing

Als Loadbalancer für dieses Setup ist zum Beispiel der Reverse-Caching-Proxy Varnish gut geeignet, da er neben der Lastenverteilung gleich noch weitere Aufgaben mit erledigen kann. Wie sich TYPO3 Webseiten mit einem Varnish beschleunigen lassen, werde ich in einem späteren Artikel noch näher betrachten.

Auf beiden Server sollte der Varnish-Proxy installiert sein und identisch konfiguriert werden. Der Varnis...


Weiterlesen über: Hochverfügbares Setup aus 2 Webservern mit Lastenverteilung
Kategorie: Clustering

Mittwoch, den 25. April 2012

NFS-Server für TYPO3 mit DRBD® hochverfügbar halten

Cluster mit DRBD

Sobald sich mehrere Webserver gemeinsame Dateien teilen, sollten diese hochverfügbar gehalten werden. Für eine Spiegelung auf zwei Systemen bietet sich ein Zusammenspiel zwischen DRBD® und Heartbeat an.

Im Artikel zum NFS-Server habe ich am Ende die Überlegung angestellt die gemeinsamen Dateien zum Beispiel auf den Loadbalancer abzulegen. Das bietet dann an, wenn der Loadbalancer ein eigenständiges physikalisches System ist. In diesem Fall dürfte es die Regel sein, dass der Server hochverfügbar vorgehalten wird und ein identisches System bei Wartungsarbeiten und Defekten die Aufgaben übernehmen kann.

Damit die gemeinsamen Daten in Echtzeit auf dem Ausfallsystem vorgehalten werden, lässt sich mit DRBD® eine Art RAID1 über das Netzwerk anlegen.
Der wichtigste Unterschied zu einem echten RAID1 ist, dass zumindest in der Konfiguration wie ich sie hier vorstelle, immer nur ein einziges Gerät exklusiven Zugriff auf das Dateisystem so...


Weiterlesen über: NFS-Server für TYPO3 mit DRBD® hochverfügbar halten
Kategorie: Clustering

Sonntag, den 15. April 2012

Gemeinsame Ressourcen für TYPO3-Instanzen im Cluster per NFS bereitstellen

TYPO3 legt wichtige Daten wie Bilder oder Einstellungen auch im Dateisystem ab. Wer die Anfragen auf mehrere Webserver verteilen will muss diese Daten allen Systemen möglichst synchron zur Verfügung stellen. NFS ist ein simpler und effizienter Ansatz dafür.

Nach einigen Artikeln über Performance-Messungen bei TYPO3-Systemen möchte ich den ersten Beitrag über Lösungsansätze beim Clustering größerer Projekte schreiben. Den hier beschriebene Ansatz habe ich vor einiger Zeit zusammen mit Technikern bei einem Kunden so entworfen. Er ist seit über einem Jahr in einem Setup aus insgesamt 6 Servern erfolgreich im Einsatz.

1) Einrichtung von NFS auf Server und Client

Die Einrichtung eines NFS-Speichers ist sehr einfach.

a) NFS-Server:

Auf Debian oder Ubuntu-Servern wird das Paket
nfs-kernel-server
benötigt.
Die Freigabe der Ressoucen erfolgt über die Datei /etc/exports
  1. /data/share   10.10.10.0/255.255...


Weiterlesen über: Gemeinsame Ressourcen für TYPO3-Instanzen im Cluster per NFS bereitstellen
Kategorie: Clustering