PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schattenserver



jalexander
18.06.09, 16:52
Hallo,

ich beabsichtige für einen IMAP SErver eine Art Backupserver nebenher laufen zu lassen.
Die Idee wäre, ein SErver mit Minimalsystem zu starten und dann per Cronjob vom aktiven Server in regelmäßigen Abständen den "Schattenserver" mit rsync abzugleichen.

Sollte der aktive Server mal abschmieren, müsste man lediglich die IP Adresse ändern und könnte mit diesem System weiterarbeiten..... so der Gedanke.

Hat solch eine "Lösung" Erfolg? Oder sollte man das nicht tun?
Welche Lösungen würde es sonst noch geben?

Danke für die Infos.

Grüsse vom See

HirschHeisseIch
18.06.09, 16:57
Du suchst HA-Cluster (http://de.wikipedia.org/wiki/Computercluster#Hochverf.C3.BCgbarkeitscluster)

Wie genau das realisiert werden soll, liegt bei Dir. Mit dem Stichwort solltest aber einiges dazu finden.

jalexander
18.06.09, 17:31
Nein nicht wirklich. Ein Cluster mit DRBD und Heartbeat habe ich für einen Fileserver aufgesetzt.
Ich möchte eine zweite, aktuell gehaltene Maschine und das eben mit rsync.
Die Frage ist ob das so tut wie gedacht?

obzidian
18.06.09, 17:41
Rsync alleine kann keine Konsistenz garantieren. Ich würds von nem Snapshot machen. Letztlich ist das doch ein HA-Cluster für Arme, warum also nicht gleich richtig, vor allem wenn du schon weißt wie es geht?

jalexander
18.06.09, 18:13
Ich würde es ja als Cluster machen, dazu müsste ich aber den IMAP SErver nochmals zumindest teilweise neu aufsetzen, da der Plattenbereich für das DRBD Raid nicht da ist.

Snapshot als per dd geht im laufenden System ja auch nicht wirklich.

Roger Wilco
18.06.09, 18:42
Schau dir das kürzlich in der Version 2.0 veröffentlichte GlusterFS an. Damit müsstest du deine vorhandenen Systeme nicht neu partitionieren.

bla!zilla
18.06.09, 19:00
Hi. Du kannst deinen "Schattenserver" einfach schnell und sicher per imapsync abgleichen.

Roger Wilco
18.06.09, 19:03
Es ist ja die Frage, ob es generell nur eine Sicherung in gewissen Intervallen sein - dann reicht das bereits genannte rsync oder eben imapsync - oder ob die Sicherung praktisch immer aktuell sein sollte. Dann bieten sich DRBD, GlusterFS oder ähnliche Mechanismen an.

bla!zilla
18.06.09, 19:15
Mirroring != Backup. Ein, in meinen Augen, gern gemachter Fehler. Ein Cluster, oder auch ein Cluster-FS ersetzen kein Backup. Bei logischen Fehlern (und um die geht es meistens) transportiert man die nämlich brav mit. Daher sehe ich hier den Ansatz eines Clusters, oder einen Cluster-Filesystem, als eher unglücklich. Klar, wenn er die "Hardware" absichern will, dann wäre das was. Aber vor logischen Fehlern schützt das nicht. Zudem schrieb er ja im ersten Post das es um eine Sicherung in regelmäßigen Abständen ging.

Roger Wilco
18.06.09, 19:20
Naja, das was er im ersten Beitrag beschreibt, klingt meiner Meinung nach eher nach einem Cold Standby anstatt eines regelmäßigen Backups. Letzteres habe ich in meinem Beitrag absichtlich nicht geschrieben. ;)

Letzten Endes hat der OP jetzt einige Alternativen aufgezeigt bekommen und darf selbst entscheiden, welche davon für seinen Anwendungsfall am besten passt.

jalexander
18.06.09, 19:30
Sorry, backup in dem Sinn soll es nciht sein, cold standby trifft es da voll.

Die IMAP Postfächer werden schon per täglichem Backup abgezogen.
Es geht rein um den Server falls der abkachelt, dass man ohne großen Aufwand den Betrieb weiter laufen lassen kann.

Im Grunde so wie bei einer MSSQL oder ORACLE Datenbank wenn eine Schattendatenbank mitläuft, die restlichen Logs einspielen und starten.
.... also zum Vergleich jetzt.

bla!zilla
18.06.09, 19:32
Dann suchst du imapsync. Ist zwar nicht online, sondern du müsstest es regelmäßig aufrufen, aber eine Art Logshipping kenne ich für IMAP nicht.

Alternativ... Migrier doch auf Exchange 2007. Dann kannst du ein CCR oder LCR Cluster bauen. ;) Da geht das.

Roger Wilco
18.06.09, 19:44
[...], aber eine Art Logshipping kenne ich für IMAP nicht.
Nicht standardisiert, aber Cyrus IMAP macht das eigentlich ganz brauchbar und ist schnell eingerichtet.

http://cyrusimap.web.cmu.edu/imapd/install-replication.html

bla!zilla
18.06.09, 20:23
Das ist ja scharf. Danke für den Tipp!

jalexander
18.06.09, 20:43
Alternativ... Migrier doch auf Exchange 2007.
Ich kenne nur exchange Microsoft ;)

Das mit dem Logshipping war nur als Beispiel gedacht.

Nach wie vor aber meine Frage, warum würde es mit rsync nicht funktionieren?
Natürlich keine automatische Umschaltung, dass man da noch manuell eingreifen muss, bevor man den "Schattenserver" in Betrieb nehmen kann ist mir klar.

Thorashh
19.06.09, 00:19
Nach wie vor aber meine Frage, warum würde es mit rsync nicht funktionieren?
Weil Du mit rsync eben keinen konsistenten Zustand sichern kannst, solange der Mailserver noch in Betrieb ist.
Die Dateien ändern sich ja ständig, während der Abgleich von rsync schon läuft.

marce
19.06.09, 06:23
aber auch da gibt's Möglichkeiten - und je nach Art der Datenhaltung des Servers muss man sich darüber evtl. überhaupt keine Gedanken machen.

jalexander
19.06.09, 07:07
Weil Du mit rsync eben keinen konsistenten Zustand sichern kannst, solange der Mailserver noch in Betrieb ist.
Die Dateien ändern sich ja ständig, während der Abgleich von rsync schon läuft.
Ja das ist mir schon klar. Aber angenommen alle drei Stunden würde rsync laufen, wäre bei einem Problem vom aktiven Server der Datenversatz zum "Schattensystem" lediglich drei Stunden. Das wäre schon akzeptabel.

Bisher hatte man lediglich ein Backup der IMAP Konten jede Nacht.
Den Vorteil, den ich sehe wäre eben, dass man das System ohne großen Aufwand mit fast aktuellen Daten zum Laufen bekommen würde.
Die Frage ist eben nur, ob ein rsync / von server a so ohne weiteres durchlaufen würde.

marce
19.06.09, 07:17
warum sollte es nicht? Rsync gleicht einfach nur ab - und ihm ist egal, was es abgleicht.

Das was Du beschreibst ist übrigens nicht das Problem "konsistenter" sondern aktueller Daten - das eine hat mit dem anderen (fast nichts) gemeinsam.

Konsistent sind Daten, wenn der Datenbestand "richtig" ist, aus Transaktionssicht gesehen.

z.B. Wenn Du ein Write-Lock auf SQL-Tabellen setzt und dann einen Dump machst, sind die Daten konsistent (da während des Dumps keine Daten geschrieben werden können), wenn nicht, kann es passieren, daß während des Dumps Änderungen gemacht werden, die dann darin nicht oder falsch enthalten sind. Dann sind die Daten nicht konsistent. Es ist aber kein Problem, die Daten 3h später wieder einzuspielen - nur ob Deine Applikation dann damit wieder sauber läuft, ist eine andere Frage...

rsync kopiert eben, was zu dem Zeitpunkt gerade da ist. Und dieser Zustand ist ohne entprechende Vorbereitung eben nicht garantiert konsistent. Das Ergebnis kann vielfältig sein - von komplettem Datenverlust über 1,2 "merkwürdig aussehende" Mails bis zu gar keine Effekte.

Daher sollte man für Syncs Methoden wählen, die eben dafür Sorge tragen, daß nur konsistente Zustände erzeugt werden - ob das erwähnte imapsync dazu gehört kann ich aber nicht sagen.

Nicht, daß Du was falsch verstehst - es kann jahrelang ohne Probleme funktionieren, sowas mit rsync zu machen. Nur, wenn es im entscheidenden Fall eben mal schief geht, wünscht man sich, man hätte damals evtl. ein bißchen mehr Zeit und Recherche investiert.

Kommt aber halt auch immer auf Deine Vorgaben, Anforderungen und Wünsche an.

bla!zilla
19.06.09, 07:46
imapsync arbeitet hier konsistent, da die Mails über IMAP aus dem Server gelesen werden. Im Prinzip wie eine Mailapplikation. Solange die Mail vom IMAP Server nicht konsistent abgelegt wurde, wird imapsync sie nicht anfassen.

marce
19.06.09, 07:49
na wunderbar. Dann würde ich mich der Empfehlung anschließen...

jalexander
19.06.09, 11:04
Das klingt schon gut. Ich dachte aber an eine synchronisation über das komplette System, damit auch alle Patches und Updates jedesmal mit dabei sind.

marce
19.06.09, 11:08
Hm, diese Anfoderung ist in diesem Thread aber neu...

Sind die beiden Systeme denn 100% identisch? Wenn nein - dann würde ich das lassen und Patches über die normalen Wege einspielen...

Bei rsync über's komplette System hast Du übrigens evtl. noch viel mehr Probleme mit konsistenten Daten - es sind ja immer einige Files (auch schreibend) geöffnet... Sind auch 100% alle Konfigdateien identisch?

Egal? Ansonsten - rsync kann ja --exclude.

Aber auch da gilt wiederum: Entscheidend ist im Endeffekt deine Anforderungsliste...

jalexander
19.06.09, 16:05
Hm, diese Anfoderung ist in diesem Thread aber neu...
Dann hatte ich mich zu Anfangs falsch oder undeutlich ausgedrückt.
Der Wunsch wäre, ein zweites System, also einen kompletten Server als Schattensystem laufen zu lassen und es permanent, also per cron Job mit rsync von einem aktiven Server abzugleichen. Also von / weg.

Die Idee dahinter ist, wenn der aktive SErver ausfällt, muss am Schattensystem lediglich die IP Adresse und der Servername geändert, neu gebootet und schon hätte man wieder ein funktionierendes System.

Genau die Punkte, dass man Daten, die sich gerade im Zugriff befinden schlecht synchronisieren kann, macht mir Kopfschmerzen. Mir war soweit schon klar, dass man unter Umständen nicht genau weiss, was da dann synchronisiert wurde.
Normalerweise würde es, so denke ich mir, zu 99% auch funktionieren, doch genau das lumpige eine Prozent machen mit 1000%iger Sicherheit in genau dem Fall, dass man den Server wirklich braucht dann auch Probleme. Genau so war mein Gedankengang.

Hätte jetzt jemand geschrieben "klar, kein problem, machen wir auch so" hätte ich auf Erfahrungswerte zurückgreifen können. Dem ist wohl aber nicht so. Also werde ich mir wohl oder übel etwas anderes überlegen müssen.