BigChris Posted May 16 Share Posted May 16 (edited) Es geht noch mal um den rsync docker von @mgutt Bei größeren Dateien (vermutlich) bricht der Server die Verbindung ab. Wobei groß jetzt bei der einen Datei so 3GB ist. Hier ein Auszug aus dem Log: Accepted publickey for root from 10.10.10.204 port 40952 ssh2: RSA SHA256:8QBCdg97iA8l3HybpH56xNvJav9ROL1a+UvrHya/WnU ssh_dispatch_run_fatal: Connection from user root 10.10.10.204 port 40952: message authentication code incorrect ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519 Generiert der Server plötzlich neue host-keys? Es tritt bei den gleichen Dateien auf. Wenn ich die betreffende Datei lösche, läuft rsync erst mal eine Weile um dann wieder den disconnect zu bekommen. Das stimmt nicht, starte ich oft genug den rsync wird die Datei kopiert. Der Fehler tritt dann an anderer Stelle wieder auf. Zeitlich nicht nachvollziehbar. Die Meldung auf dem Client, von dem die Übertragung kommt: Connection to 10.10.10.200 closed by remote host. rsync: [sender] write error: Broken pipe (32) rsync error: unexplained error (code 255) at io.c(848) [sender=3.2.7] ERROR: The synchronisation failed. Edited May 16 by BigChris Quote Link to comment
Amane Posted May 16 Share Posted May 16 (edited) Ich kenn den rsync docker jetzt nicht gut. Aber da es an sich klappt, jedoch nur bei grösseren Daten nicht spricht für folgende Thematik: MTU Grösse (schaffst du es zu testen was eine MTU von 1400 auf beiden Seiten bewirk, respektiv hast du eine MTU von mehr als 1500 eingestellt?) Dauer der Übertragung (Man könnte eine "ClientAliveInterval 60" und "ClientAliveCountMax 100" in den ssh Einstellungen versuchen) Falls du rsync parameter manuel definieren kannst, könnte man z.B. mit (rsync --partial --bwlimit=10000) die übertragung in Teile splitten. Edited May 16 by Amane Quote Link to comment
mgutt Posted May 17 Share Posted May 17 Wenn die SSH Verbindung unterbrochen wird, dann bricht auch rsync sofort ab. Also ziehst du den Stecker und steckst ihn sofort wieder rein. Pech. Die Verbindung bleibt weg und es gibt keinen Wiederholungsversuch. Das müsste man dann in das Skript einbauen, dass der immer wieder rsync startet, was ich aber aktuell nicht eingebaut habe. Ansonsten würde ich es mal damit bei dem rsync Befehl bzw den ssh Optionen versuchen: -o ServerAliveInterval=15,ServerAliveCountMax=3 Zur Erklärung: Manche Übertragungen brauchen länger zb weil rsync evtl erst lokal komprimiert und je nachdem welche SSH Einstellungen der Zielserver verwendet, trennt der die Verbindung. Hier hilft server alive interval, welcher alle 15 Sekunden ein Keep Alive Paket sendet. Außerdem darf mit server Alice Connect bis zu 3x die Verbindung komplett abbrechen. Allerdings weiß ich nicht, ob rsync dann auch einen retry macht oder die betroffene Datei, wo das gerade passiert, dann überspringt. Quote Link to comment
mgutt Posted May 17 Share Posted May 17 7 hours ago, Amane said: Falls du rsync parameter manuel definieren kannst, könnte man z.B. mit (rsync --partial --bwlimit=10000) die übertragung in Teile splitten. Da interpretierst du was falsch. Bwlimit begrenzt die Bandbreite, also die Geschwindigkeit der Übertragung auf 10.000 KByte/s und partial lässt den bereits übertragenden Teil bei einem Verbindungsabbruch liegen, wenn die Verbindung abbricht. Das macht dann bei einer SSH Verbindung dir rsync Applikation auf der Serverseite. Das bringt bei meinem Skript aber nichts, weil das kein Fortsetzen unterstützt, da es bei jedem Start mit einem komplett neuen Ordner beginnt, wäre aber tatsächlich mal eine Idee für eine Optimierung. 1 Quote Link to comment
Amane Posted May 17 Share Posted May 17 (edited) 12 hours ago, mgutt said: Da interpretierst du was falsch. Bwlimit begrenzt die Bandbreite Ah da hast du recht.. es gibt leider keine Möglichkeit "--partial" genauer zu definieren. Und man müsste wohl den rsync neu starten und das im skript bedenken. Aber wäre eine Möglichkeit.. Zumindest abseits der tatsächlich und wahrscheinlichen Lösung, dass man es mit KeepAlive versucht. Edited May 17 by Amane Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.