![Kopieren großer Dateien auf mehrere Rechner in einem LAN](https://rvso.com/image/567636/Kopieren%20gro%C3%9Fer%20Dateien%20auf%20mehrere%20Rechner%20in%20einem%20LAN.png)
Ich habe ein paar große Dateien, die ich so schnell wie möglich von einem Linux-Rechner auf etwa 20 andere Linux-Rechner kopieren muss, alle im selben LAN. Welche Tools/Methoden wären am besten zum Kopieren dieser Dateien geeignet, wobei zu beachten ist, dass dies keine einmalige Kopie sein wird. Diese Rechner werden nie mit dem Internet verbunden sein und Sicherheit ist kein Problem.
Aktualisieren:
Der Grund für meine Frage ist, dass wir (soweit ich weiß) derzeit scp
seriell Dateien auf alle Maschinen kopieren. Mir wurde mitgeteilt, dass dies „zu langsam“ sei und nach einer schnelleren Alternative gesucht werde. Wie mir gesagt wurde, verlangsamt der Versuch, die Aufrufe zu parallelisieren, scp
das Ganze aufgrund von Festplattensuchvorgängen nur noch weiter.
Antwort1
BitTorrent. So stellt Twitter einige Dinge intern bereit.
http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html(Link zum Webarchiv)
Antwort2
Wie wäre es mitUFTP, es verwendet Multicast, um Dateien über UDP gleichzeitig an mehrere Clients zu liefern. Nicht jedermanns Sache und ich bin kein Experte darin, aber es klingt, als ob es das tut, was Sie wollen.
Antwort3
Haben Sie versucht, diese Daten mit zu kopieren rsync
? Wenn Sie über ein 1-GBit-LAN oder schneller verfügen, sollte das Kopieren über 4*20 GB kein Problem sein.
Wie oft wird dieser Kopiervorgang durchgeführt? Ist es wichtig, wenn es ein paar Minuten dauert?
Antwort4
Das Einrichten einer NFS-Freigabe und das Abrufen großer Dateien aus diesem freigegebenen Repository durch jede Maschine ist wahrscheinlich die schnellste Methode (NFS ist sehr schnell und hat nur einen geringen Overhead).
Sie könnten dem Quellserver ein oder zwei zusätzliche Netzwerkkarten hinzufügen und diese miteinander verbinden, um einen besseren Durchsatz zu erzielen.
Die Implementierung könnte ein einfacher Cron-Job auf jedem Zielserver sein, der jede Stunde/jeden Tag/jeden beliebigen Zeitpunkt blind Daten aus der Freigabe abruft. Sie könnten auch einen Daemon einrichten, der nach neuen Dateien sucht; Sie könnten auch einfach eine Kontrollsitzung per SSH (mit Schlüsselpaaren) in jede Zielbox schreiben und sie anweisen, die Datei abzurufen, wenn Sie Ihr Skript ausführen.