Heartbeat übers Internet

Hallo,
wie man weiter unten sieht, suche ich eine Möglichkeit einen Server zu spiegeln und bei einem Serverausfall auf das Backup umzuleiten. Das sollte wohl soweit alles mit Heartbeat und DRBD gehen. Nur geht das auch über das Internet, also wenn die Server nicht im gleichen Netzwerk sind? Hat da jemand schon Erfahrungen gemacht?

Gruß
Tommy

Hi,

[backup server] Das sollte wohl soweit alles mit Heartbeat und
DRBD gehen. Nur geht das auch über das Internet, also wenn die
Server nicht im gleichen Netzwerk sind?

Also, heartbeat wird damit vermutlich schon klar kommen, aber richtig zuverlaessig wird das auch nicht, weil man da schon ganz gern redundante Netzwerkpfade zwischen den Rechnern haben moechte. Hat man nur einen, fuehrt ein Ausfall dessen fast schon zwangslaeufig zum split-brain. Und so ein Internet kann schon mal irgendwo auseinanderfallen.

DRBD wird Dir das aber wohl auf jeden Fall uebel nehmen. Das kann man in drei Modi A, B und C betreiben. Nur C gewaehrleistet, dass eine Schreiboperation auf den Platten beider server gelandet ist bevor sie als erfolgreich an die Anwendung gemeldet wird, d.h. eine Anwendung muss bei jeder kleinen Schreiboperation warten, bis der Kram auch durch’s Internet auf der anderen Maschine ist. Das duerfte ziemlich lahm sein. Auch bei Modus B duerfte das der Flaschenhals sein. Nur Modus A ist wirkich asynchron, die Schreiboperation einer Anwendung ist erfolgreich, sobald sie auf der lokalen Platte ist. Die Synchronisation auf die entfernte Platte haengt ggf. hinterher.

Siehe auch: http://www.drbd.org/users-guide/s-replication-protoc…

Darueberhinaus konnte DRBD, als ich mich das letzte mal damit beschaeftigt habe, auch noch keine verschluesselte Uebertragung, also braucht’s noch ein VPN dazwischen, was der Netzwerkbandbreite und -latenz dann auch nicht gerade zutraeglich ist.

All das will man eigentlich nicht. DRBD arbeitet auf block level, wenn da ein paar kBytes fehlen, wird das darueberliegende Dateisystem schon uebel nehmen. Da fehlt dann schnell mal ein Verzeichnis. Und die MySQL wird das auch nicht moegen.

MySQL kann auch Replikation. Als ich das zuletzt gemacht habe, war das zwar auch noch ein ziemliches Gefrickel, aber man kann das schon irgendwie zum Laufen bringen. Ich wuerde mal denken, dass das Replikationsprotokoll etwas netzschonender ist, als eins, was auf den block level zwei Ebenen tiefer arbeitet.

Hat da jemand schon Erfahrungen gemacht?

Nein. Und trotzdem soviel Quark dazu geschrieben. Daher kann ich nur empfehlen, das mal zu probieren. DRBD ist nicht so schwer zu installieren und konfigurieren. Heartbeat ist neuerdings etwas zu Testzwecken kann man den Wechsel zwischen master und slave auch eben mal manuell machen, nachdem man waehrend I/O auf dem block device am master mal ein „echo b >/proc/sysrq-trigger“ abschiesst. Und dann mal schauen, was auf dem block device am slave angekommen ist. Ausserdem schreibst Du, dass die beiden server beim gleichen hoster sitzen, vielleicht sind sie ja gar nicht so weit auseinander.

HTH.

Mf
Gruss vom Frank.

Ist mal ein toller Text zu meiner Frage. Mit so einer ausführlichen Antwort habe ich nicht gerechnet. Danke. Werde erstmal versuchen, mit dem Hoster zu reden, ob die Server intern kommunizieren können. Ansonsten werde ich es per Internet versuchen.