Welches Dateisystem für Linux-HA Gateway-Lösung?

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
alrik
Beiträge: 5
Registriert: 08.11.2005 10:54:43
Wohnort: Hamburg

Welches Dateisystem für Linux-HA Gateway-Lösung?

Beitrag von alrik » 08.11.2005 11:32:17

Hallo zusammen :wink:
Ich möchte einen 2-Node-Cluster-Gateway mit heartbeat im aktiv-aktiv Betrieb aufsetzen. Verschiedene Dienste (wie DHCP, DNS (bind), SMTP (postfix), HTTP-Traffic, ...) sollen verteilt auf den Nodes laufen. Fällt das eine System aus übernimmt das noch laufende System die anderen Dienste mit.
Ich suche für dieses Vorhaben noch ein geeignetes Dateisystem. Über DRBD habe ich gelesen, dass es nur immer nur einen schreibenden Zugriff gewährt. Ich würde aber gerne das ganze so umsetzen, dass zumindest Konfigurations-Dateien synchronisiert werden. Das heißt egal auf welchem Node ich Änderungen vornehme, die Änderungen müssen nach Speicherung auf beiden Nodes verfügbar sein. Bei Log-Files wird das ganze ja schon schwieriger, da sie ja fast immer geöffnet sind. Das wäre aber nicht so wichtig, weil man die immer noch woanders (z.B. auf einen Logging-Server) hinschieben kann. Im Prinzip würde es ja reichen, nur Konfigurations-Dateien von Diensten die auf einem der beiden Nodes laufen zu synchronisieren.

Hat jemand schon Erfahrungen in Linux-HA mit aktiv-aktiv Cluster gesammelt?
Welches Dateisystem ist dafür am besten geeignet?
Gibt es vielleicht doch eine Lösung mit DRBD?
Der Aufwand das einzurichten sollte nicht zu groß sein.

Danke für eure Tipps.

Grüßle
alrik

Benutzeravatar
meandtheshell
Beiträge: 4054
Registriert: 14.01.2005 17:51:30

Beitrag von meandtheshell » 08.11.2005 12:41:04

wichtig bei einem HA cluster ist das du datenintegrität hast - d.h. einen gemeinsamen speicher auf den alle (mindestens zwei) nodes schreibend und lesend zugreifen können - genau das ermöglicht DRBD
trickreich wird es erst wenn du das nicht hast - d.h. HA cluster die kein gemeinsames SAN haben wobei trotzdem datenintegrität gewährleistet werden muss (ich denke das gibt es gar nicht - ich kenne keinen fall wo das so implementiert ist )

ich denke du verwechselst DRBD mit der klasse der filesysteme wie z.B. ext3 usw. - DRBD ist ein netzwerk RAID 1 - auf diesem richtest du dann ein filesystem ein (z.B. ext3)

in einfachen worten:
wenn du einen HA cluster mit DRBD machst sind alle daten immer "syncronisiert" (stimmt hier nicht da ...) da es ja nur einen Speicher gibt - im einfachsten fall zwei HDD's an hardware raid controller welche du als ein laufwerk in DRBD einbindest

wegen der schreibzugriffe:
DRBD hat IIRC drei versch. modi - je nach häufigkeit der zugriffe bzw. datenmengen und Netzwerk das darunterliegt wählst du das was am besten ist
Über DRBD habe ich gelesen, dass es nur immer nur einen schreibenden Zugriff gewährt.
was ja auch ganz logisch ist - vergiss nicht das wir hier im ms bereich sind
Der Aufwand das einzurichten sollte nicht zu groß sein.
das einrichten ist ja nur 15% der zeit die du investieren musst - der rest ist einlesen, testen usw.


BTW - wenn ich mir deine dienste ansehe kannst du dir zuerst die frage stellen wie viel prozent schreibzugriffe du haben wirst (wenig im vergleich zu den lesenden) und dann noch ob ein 100MBit netz (das nehme ich an - wenn es ein GBit netz ist noch besser) mit dem Datenaufkommen nicht zu Rande kommt

so wie ich das sehe musst du dir keine sorgen machen

markus

alrik
Beiträge: 5
Registriert: 08.11.2005 10:54:43
Wohnort: Hamburg

Beitrag von alrik » 08.11.2005 14:29:01

Erstmal danke für die schnelle Antwort...
ich denke du verwechselst DRBD mit der klasse der filesysteme wie z.B. ext3 usw. - DRBD ist ein netzwerk RAID 1 - auf diesem richtest du dann ein filesystem ein (z.B. ext3)
ich bin mir schon im klaren darüber was DRBD ist, bei der Suche nach einem geeignetem Dateisystem meinte ich Methoden wie DRBD, GFS, Coda oder ähnliche..
wenn du einen HA cluster mit DRBD machst sind alle daten immer "syncronisiert"
aber ist das nicht ein Problem bei einem Aktiv-Aktiv-Cluster? Hier sind doch die beiden Nodes im Normalfall unterschiedlich konfiguriert und sollen nur bei einem Ausfall einer Node die anderen Dienste übernehmen. Es gibt ja auch Dienste die im Normalbetrieb auf beiden Nodes laufen aber unterschiedlich konfiguriert sind (z.B. DNS/bind der auf Node 1 als master und auf Node 2 als slave laufen kann, oder verschiedene Firewall-Scripte).

Wenn beide Nodes auf den gleichen Datenbestand zugreifen, wie ist dann gewährleistet, dass man z.B. in Log-Einträgen in /var/log zwischen Node 1 und 2 unterscheiden kann?

Mit einem aktiv-passiv-Cluster (Hot-StandBy) würde mir das irgendwie einleuchten...
Vielleicht habe ich auch gerade einen Knoten im Hirn?! :-)

Benutzeravatar
meandtheshell
Beiträge: 4054
Registriert: 14.01.2005 17:51:30

Beitrag von meandtheshell » 08.11.2005 15:15:01

nun ob du auch systemdaten (also /boot / etc. beider systeme oder nur eines systems) auf das DRBD device legst oder ob dafür jeder node eine HDD hat und nur die nutzdaten der jeweiligen dienste im DRBD liegen hat bleibt dir überlassen
beides hat vor und nachteile

in einfachen worten:
du kannst mit beiden nodes ein DRBD verwenden sonst keine HDD oder
das DRBD für nutzdaten der dienste etc. und jeweils (pro node eine HDD) für systemdaten und anderes zeug

im falle das du mit beiden ein DRBD verwendest ist das booten etwas kniffliger, da du eine maschine als diskless client booten musst was nicht der fall ist wenn zum booten je eine HDD oder oder evtl. auch CD zu verfügung ist um / und /boot mounten zu können - der nachteil ist vielleicht das du eine HDD mehr benötigst

was du schlußendlich machst hängt vom einzelfall ab ...
noch genialer in deinem fall wäre ja ein HA cluster mit DRBD und linux-Vserver - da könntest du die dienste in die Vserver packen und dann ganz einfach von einem node zum anderen kopieren (wie ein directory ohne das du irgendeine konfigurations datei anpassen musst - du bist hardware unabhängig - d.h. du kannst einen apachen mit einigen websites innerhalb von 2 min von einer single cpu auf eine smp maschine ziehen und das ding läuft dann weiter wie vorher)
http://linux-vserver.org/Vserver+DRBD
zuvor müsstest du allerdings den linux-Vserver einrichten
http://www.neubix.de/vserver/

markus

alrik
Beiträge: 5
Registriert: 08.11.2005 10:54:43
Wohnort: Hamburg

Beitrag von alrik » 08.11.2005 15:50:18

Danke, ich denke das wird schonmal weiter helfen...

Benutzeravatar
meandtheshell
Beiträge: 4054
Registriert: 14.01.2005 17:51:30

Beitrag von meandtheshell » 08.11.2005 16:15:36

alrik hat geschrieben:Danke, ich denke das wird schonmal weiter helfen...
wenn nicht meldest du dich eben wieder - BTW das ist ein vorhaben wofür man eben zeit benötigt um sich einzulesen udgl. - das geht nicht in einer woche wenn man bei null beginnt

grüße markus

Antworten