Frage Der schnellste Weg, um viele Daten zu kopieren


Ich muss eine Menge Dateien (60000+) zwischen zwei Servern kopieren, was ungefähr 5 TB an Daten entspricht.

Ich habe versucht, den Backup-Server als Ordner zu installieren und die Dateien auf diese Weise zu kopieren, aber ich konnte die Berechtigungen zum Schreiben von Dateien nicht richtig bekommen.

Also habe ich daran gedacht, die verbleibenden 3 nic Ports zu verbinden, Crosscables anzuschließen und cp / scp zu verwenden, um alles zu kopieren. Jetzt habe ich keine Erfahrung damit, nic zu binden und Daten auf diese Weise zu übertragen.

Wäre es schneller? Kann mir jemand etwas sagen oder mir Ratschläge für bessere Lösungen geben? Würde sehr geschätzt werden.


1
2018-06-18 13:15


Ursprung


Sind scp und rsync in deinem Fall nicht verwendbar? Oder verbinden Sie die beiden Server über eine einzelne NIC-Verbindung zwischen Server und Server (statische IPs auf beiden NICs mit demselben IP-Bereich) in einem Netzwerkbereich, der nicht von Ihrem Netzwerk verwaltet wird? (Eine ähnliche Situation zeigte sich bei der Arbeit, warum ich frage) - Thomas Ward♦
Beide Optionen sind brauchbar, ich habe mich nur gefragt, ob das Anbinden der NICs den Prozess beschleunigen würde, da ein cat6-Crosskabel mit scp-Befehl zwischen 12 und 14 Stunden benötigt, wenn nicht mehr. - Roffel
Überprüfen Sie dies askubuntu.com/a/580645/216503 - heemayl
@Roffel Idealerweise würden Sie Transaktionen aktualisieren, anstatt zwischen Servern zu kopieren. Möglicherweise müssen Sie eine Menge Daten zu Beginn übertragen, aber Sie sollten Backups aufbewahren und Transaktionsaktualisierungen durchführen (d. H. "Diese Daten sind neu, senden Sie sie an den anderen Server" und nicht an alle gleichzeitig). - Thomas Ward♦
@ThomasW. Normalerweise passiert das, wir haben 3 Backup-Server, um die Dateien zu speichern. Nur jetzt bekommen wir ein OS-Upgrade mit neuem Kernel und allem. Nachteil, der neue Kernel und OS können nicht mit der aktuellen Baumstruktur umgehen, wird also alle Festplatte bei der Installation löschen. Das ist eher eine einmalige Sache. Um zu verhindern, dass unser System zu lange läuft, möchte ich es schnell kopieren, da es für alle 3 Server hin und her gehen muss. - Roffel


Antworten:


Wenn ich große Mengen von Dateien kopiere, verwende ich normalerweise diese Befehle:

Ziel:

nc -q 1 -l 1234 | pv -pterb -s <filesize>G | tar xv

Quelle:

tar cv <DIR>  | nc -q 1 <targetip> 1234

Dadurch werden alle Daten ohne großen Protokoll-Overhead von Quelle zu Ziel über Port 1234 direkt übertragen. Dies erwies sich als der schnellste Weg für mich, die Daten in einem lokalen Netzwerk zu kopieren. Als Ergänzung habe ich den Befehl pv im Ziel hinzugefügt, damit ich einen ungefähren Überblick über die Entfernung der Dateien bekommen kann.

Für eine erweiterte, aber möglicherweise langsamere Übertragung würde ich rsync empfehlen.


3
2018-06-18 13:36