mit rsync zwei Verzeichnisse auf zwei Servern synchron halten
Hallo, ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen. Ich kann mich von jedem host auf den anderen per ssh ohne Passwort mit Schlüsseln anmelden und will die Syncronisierung auch über ssh laufen lassen. Wie schaffe ich es, daß erst einmal beide Verzeichnisse synchron sind ? Sprich Dateien die auf host A vorhanden aber auf host B nicht von A nach B kopiert werden und umgekehrt ? Nach dieser initialen Synchronisierung möchte ich daß Dateien, die auf A gelöscht/geändert werden auch auf B gelöscht/geändert werden und umgekehrt. Es geht im Endeffekt darum daß es egal ist, auf welchem host man /srv/www pflegt, diese Änderungen werden auf den anderen host synchronisiert. Es gibt ein tägliches backup, von daher ist das mit dem Löschen kein Problem. Für die Synchronisierung nach der initialen hab ich mir bisher "rsync -avn --delete host_B:/srv/www/ /srv/www/" zusammengebastelt, das auf host_A läuft. Reicht das ? Löscht --delete in beiden Richtungen ? Ich werde natürlich alles mit -n testen. Danke. Bernd -- Bernd Lentes Systemadministration institute of developmental genetics Gebäude 35.34 - Raum 208 HelmholtzZentrum München bernd.lentes@helmholtz-muenchen.de phone: +49 (0)89 3187 1241 fax: +49 (0)89 3187 2294 Wer glaubt das Projektleiter Projekte leiten der glaubt auch das Zitronenfalter Zitronen falten Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Dr. Alfons Enhsen, Renate Schlusen (komm.) Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 17. Juni 2016 um 22:22 schrieb Lentes, Bernd
ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen.
Warum so kompliziert? Leg das Vereichnis auf einen Server und mounte das bspw. per NFS. DRDB kann inzwischen angeblich auch drei Systeme synchronisieren. Gruß Martin -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
----- On Jun 17, 2016, at 10:22 PM, Bernd Lentes bernd.lentes@helmholtz-muenchen.de wrote:
Hallo,
ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen. Ich kann mich von jedem host auf den anderen per ssh ohne Passwort mit Schlüsseln anmelden und will die Syncronisierung auch über ssh laufen lassen. Wie schaffe ich es, daß erst einmal beide Verzeichnisse synchron sind ? Sprich Dateien die auf host A vorhanden aber auf host B nicht von A nach B kopiert werden und umgekehrt ? Nach dieser initialen Synchronisierung möchte ich daß Dateien, die auf A gelöscht/geändert werden auch auf B gelöscht/geändert werden und umgekehrt. Es geht im Endeffekt darum daß es egal ist, auf welchem host man /srv/www pflegt, diese Änderungen werden auf den anderen host synchronisiert. Es gibt ein tägliches backup, von daher ist das mit dem Löschen kein Problem.
Für die Synchronisierung nach der initialen hab ich mir bisher "rsync -avn --delete host_B:/srv/www/ /srv/www/" zusammengebastelt, das auf host_A läuft. Reicht das ? Löscht --delete in beiden Richtungen ? Ich werde natürlich alles mit -n testen.
Ich glaube ich brauch auch noch -u: "rsync -avnu --delete host_B:/srv/www/ /srv/www/" Es soll natürlich keine ältere Version auf eine neue kopiert werden. Bernd Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Dr. Alfons Enhsen, Renate Schlusen (komm.) Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On Fri, Jun 17, 2016 at 10:33:42PM +0200, Lentes, Bernd wrote:
----- On Jun 17, 2016, at 10:22 PM, Bernd Lentes bernd.lentes@helmholtz-muenchen.de wrote:
ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen.
Wie stellst du sicher, daß eine auf dem einen Server (A) neu angelegte Datei vom anderen (B) auch als neu angelegt betrachet wird und nicht als "auf B gelöscht" und somit wieder gelöscht wird? Ich denke, du wirst Probleme bekommen, je nachdem welcher Cronjob wann startet. Der Vorschlag mit NFS klingt IMO brauchbarer. Vor allem umgehst du Probleme, sollte z.B. zwischen den Cronjobs die selbe Datei auf beiden Servern verändert werden. flo -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Martin Schröder schrieb am 17.06.2016 um 22:30:
Warum so kompliziert? Leg das Vereichnis auf einen Server und mounte das bspw. per NFS.
Es wäre eine mögliche Lösung, wenn die Rechner immer online sind - sonst stehen die Rechner nicht zur Verfügung. Ich nutze syncthing im heimischen Netz für die Synchronisierung zwischen verschiedenen Rechnern. Es läuft für mich gut und stabil. Beste Grüße, der Marco. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 17.06.2016 um 22:22 schrieb Lentes, Bernd:
Hallo,
ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen. Ich kann mich von jedem host auf den anderen per ssh ohne Passwort mit Schlüsseln anmelden und will die Syncronisierung auch über ssh laufen lassen. Wie schaffe ich es, daß erst einmal beide Verzeichnisse synchron sind ? Sprich Dateien die auf host A vorhanden aber auf host B nicht von A nach B kopiert werden und umgekehrt ? Nach dieser initialen Synchronisierung möchte ich daß Dateien, die auf A gelöscht/geändert werden auch auf B gelöscht/geändert werden und umgekehrt. Es geht im Endeffekt darum daß es egal ist, auf welchem host man /srv/www pflegt, diese Änderungen werden auf den anderen host synchronisiert. Eine Synchronisierung in zwei Richtungen ist immer mit Problemen verbunden. Der Aufwand um festzustellen, welche Dateien nun von A nach B und von B nach A zu kopieren sind ist nicht unerheblich. Wenn Du Dich für einen Server als Master entscheidest und immer nur dort änderst, dann umgehst Du die Zweiwege-Synchronisierung und hast auch immer beide Server auf dem gleichen Stand.
Oder gibt es einen Grund warum Du zwingend auch auf dem zweiten Server ändernd zugreifen musst? Gruß Mark -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
----- Am 18. Jun 2016 um 10:27 schrieb Mark Wenzel mark.wenzel@gmx.net:
Am 17.06.2016 um 22:22 schrieb Lentes, Bernd:
Hallo,
ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen. Ich kann mich von jedem host auf den anderen per ssh ohne Passwort mit Schlüsseln anmelden und will die Syncronisierung auch über ssh laufen lassen. Wie schaffe ich es, daß erst einmal beide Verzeichnisse synchron sind ? Sprich Dateien die auf host A vorhanden aber auf host B nicht von A nach B kopiert werden und umgekehrt ? Nach dieser initialen Synchronisierung möchte ich daß Dateien, die auf A gelöscht/geändert werden auch auf B gelöscht/geändert werden und umgekehrt. Es geht im Endeffekt darum daß es egal ist, auf welchem host man /srv/www pflegt, diese Änderungen werden auf den anderen host synchronisiert. Eine Synchronisierung in zwei Richtungen ist immer mit Problemen verbunden. Der Aufwand um festzustellen, welche Dateien nun von A nach B und von B nach A zu kopieren sind ist nicht unerheblich. Wenn Du Dich für einen Server als Master entscheidest und immer nur dort änderst, dann umgehst Du die Zweiwege-Synchronisierung und hast auch immer beide Server auf dem gleichen Stand.
Oder gibt es einen Grund warum Du zwingend auch auf dem zweiten Server ändernd zugreifen musst?
Das scheint nicht so einfach zu sein wie ich mir dachte. Werde mal über DRBD nachdenken. Es geht eh um einen HA-Cluster. Bei DRBD brauch ich bei einer Active/Active Konfiguration ein Cluster FS, nur bei einer Active/Passive Lösung geht's auch mit konventionellem FS (ext3, btrfs ...) ? Nur mit Active/Active hätte ich Synchnronisation in beide Richtungen ? Bernd Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Dr. Alfons Enhsen, Renate Schlusen (komm.) Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
----- On Jun 18, 2016, at 8:19 PM, Bernd Lentes bernd.lentes@helmholtz-muenchen.de wrote:
----- Am 18. Jun 2016 um 10:27 schrieb Mark Wenzel mark.wenzel@gmx.net:
Am 17.06.2016 um 22:22 schrieb Lentes, Bernd:
Hallo,
ich will auf zwei Servern jeweils das Verzeichnis /srv/www synchron halten. Es sollen Änderungen an einer Datei auf den anderen host synchronisiert werden, und vice versa. Rsync als cronjob laufen. Ich kann mich von jedem host auf den anderen per ssh ohne Passwort mit Schlüsseln anmelden und will die Syncronisierung auch über ssh laufen lassen. Wie schaffe ich es, daß erst einmal beide Verzeichnisse synchron sind ? Sprich Dateien die auf host A vorhanden aber auf host B nicht von A nach B kopiert werden und umgekehrt ? Nach dieser initialen Synchronisierung möchte ich daß Dateien, die auf A gelöscht/geändert werden auch auf B gelöscht/geändert werden und umgekehrt. Es geht im Endeffekt darum daß es egal ist, auf welchem host man /srv/www pflegt, diese Änderungen werden auf den anderen host synchronisiert. Eine Synchronisierung in zwei Richtungen ist immer mit Problemen verbunden. Der Aufwand um festzustellen, welche Dateien nun von A nach B und von B nach A zu kopieren sind ist nicht unerheblich. Wenn Du Dich für einen Server als Master entscheidest und immer nur dort änderst, dann umgehst Du die Zweiwege-Synchronisierung und hast auch immer beide Server auf dem gleichen Stand.
Oder gibt es einen Grund warum Du zwingend auch auf dem zweiten Server ändernd zugreifen musst?
Das scheint nicht so einfach zu sein wie ich mir dachte. Werde mal über DRBD nachdenken. Es geht eh um einen HA-Cluster. Bei DRBD brauch ich bei einer Active/Active Konfiguration ein Cluster FS, nur bei einer Active/Passive Lösung geht's auch mit konventionellem FS (ext3, btrfs ...) ? Nur mit Active/Active hätte ich Synchnronisation in beide Richtungen ?
Es geht um eine Webanwendung, die in perl geschrieben ist. Dann könnte ich doch auch /usr/lib/perl auf ein DRBD legen, und müßte fehlende Perlmodule nur 1x installieren. Wie sieht das mit DRBD aus ? Als Grundlage ein LV, dan DRBD und oben drauf noch ein filesystem ? Bernd Helmholtz Zentrum Muenchen Deutsches Forschungszentrum fuer Gesundheit und Umwelt (GmbH) Ingolstaedter Landstr. 1 85764 Neuherberg www.helmholtz-muenchen.de Aufsichtsratsvorsitzende: MinDir'in Baerbel Brumme-Bothe Geschaeftsfuehrer: Prof. Dr. Guenther Wess, Dr. Alfons Enhsen, Renate Schlusen (komm.) Registergericht: Amtsgericht Muenchen HRB 6466 USt-IdNr: DE 129521671 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Das scheint nicht so einfach zu sein wie ich mir dachte. Werde mal über DRBD nachdenken. Es geht eh um einen HA-Cluster. Bei DRBD brauch ich bei einer Active/Active Konfiguration ein Cluster FS, nur bei einer Active/Passive Lösung geht's auch mit konventionellem FS (ext3, btrfs ...) ? Nur mit Active/Active hätte ich Synchnronisation in beide Richtungen ?
Es geht um eine Webanwendung, die in perl geschrieben ist. Dann könnte ich doch auch /usr/lib/perl auf ein DRBD legen, und müßte fehlende Perlmodule nur 1x installieren. Wie sieht das mit DRBD aus ? Als Grundlage ein LV, dan DRBD und oben drauf noch ein filesystem ? https://www.drbd.org/en/ ist nicht ganz trivial. Ist die Anwendung statisch oder bekommt sie ständig neue Daten/ Änderungen mit. Gruss Ralf Prengel Team Manager Customer Care Comline AG Hauert 8 D-44227 Dortmund/Germany Telefon: +49 231 97575 904 Mobil: +49 151 10831 157 Fax: +49 231 97575 257 E-Mail: ralf.prengel@comline.de www.comline.de Vorstand: Stephan Schilling Aufsichtsrat: Otto Prange (Vorsitzender) HR Dortmund B 14570 USt.-ID-Nr. DE 124727422
Am 20.06.2016 um 12:40 schrieb ralf.prengel@comline.de:
Das scheint nicht so einfach zu sein wie ich mir dachte. Werde mal über DRBD nachdenken. Es geht eh um einen HA-Cluster. Bei DRBD brauch ich bei einer Active/Active Konfiguration ein Cluster FS, nur bei einer Active/Passive Lösung geht's auch mit konventionellem FS (ext3, btrfs ...) ? Nur mit Active/Active hätte ich Synchnronisation in beide Richtungen ?
Es geht um eine Webanwendung, die in perl geschrieben ist. Dann könnte ich doch auch /usr/lib/perl auf ein DRBD legen, und müßte fehlende Perlmodule nur 1x installieren. Wie sieht das mit DRBD aus ? Als Grundlage ein LV, dan DRBD und oben drauf noch ein filesystem ?
https://www.drbd.org/en/ ist nicht ganz trivial. Ist die Anwendung statisch oder bekommt sie ständig neue Daten/ Änderungen mit.
Gruss Ralf Prengel
Hi, wenn Du sicher bist, dass Deine Zeiten auf beiden Systemen aktuell sind und Du eine Datei nur entweder dort _oder_ da innerhalb eines Rsync-Zyklus änderst, sollte rsync mit -u eigentlich ausreichen cu jth -- www.teddylinx.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Zitat von "Lentes, Bernd"
Es geht um eine Webanwendung, die in perl geschrieben ist. Dann könnte ich doch auch /usr/lib/perl auf ein DRBD legen, und müßte fehlende Perlmodule nur 1x installieren. Wie sieht das mit DRBD aus ? Als Grundlage ein LV, dan DRBD und oben drauf noch ein filesystem ?
Du könntest auch auf einem Server die Daten pflegen und auf Nummer 2 rsyncen. Davo schaltest du eine Firwwall oder was auch immer die HA kann und die beiden Systeme hinter einer von aussen IP versteckt. Öffentlich hast du dann die Verfügbarkeit gesichert und von innen keinen Ärger mit syncs die dann doch mal nicht funktionieren. Man kann das sehr einfach mal mit der Sophos UTM virtuell ausprobieren. Gruss -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (8)
-
Florian Groß
-
Joerg Thuemmler
-
Lentes, Bernd
-
Marco Bakera
-
Mark Wenzel
-
Martin Schröder
-
Ralf Prengel
-
ralf.prengel@comline.de