PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Filesharing zum synchronisieren großer Dateien auf clients einsetzbar?



mamue
29-09-2007, 11:25
Hallo,
ich habe hier einige client-PC, die ich gelegentlich über ein Image mit neuer Software versorge. Es gibt viele Alternativen, aber im großen und ganzen hat sich das in den letzten drei Jahren bewährt. Vor kurzem ging es allerdings dramatisch schief: Der Switch war beim Verteilen des Images auf die Zielpartition ausgefallen und somit alle Clients eines Raumes (30 Stück) unbrauchbar. Den Fehler zu finden, zu beseitigen und die PC neu zu betanken dauerte zwei Tage.
Ich würde so etwas gerne in Zukunft vermeiden. Mein Gedanke ist:
Ich erstelle ein Image und speichere das auf dem Server, wie gewohnt.
Die Clients holen sich die Image-Datei und speichern die auf einer seperaten Partition ab. Wenn das schiefläuft, weil das Netzwerk Defekte hat, wär's schade, aber eben nicht dramatisch.
Wenn alle Clients die Datei/en haben, wird das Image lokal von der Datei auf die Zielpartition geschrieben. Das mag langsam sein, aber eigentlich kann nichts mehr schiefgehen, oder?
Mein Problem: Ich muß im Hintergrund, wärend ein Anwender den PC nutzt, die Datei kopieren und das muß folglich sehr ressourcenschonend und sehr sicher ablaufen. Zeit spielt eigentlich kaum eine Rolle.
Tools die nicht verwendet werden können sind zum Beispiel:
1) copy, xcopy: Keine Bandbreitenbegrenzung, keine (blockweise) Konsistenzprüfung
2) rsync: laut Webseite unter Umständen zu Speicherhungrig - ich habe teilweise nur 128MB RAM.
3) torrent-clients, Azureus: Sehr robust, brauchen aber viel RAM (Azureus) und keines läuft ohne GUI AFAIK.

Ich weiß auch gar nicht, ob sich ein Filesharing im LAN realisieren ließe, aber ich hoffe, es ist ein wenig klar geworden, worauf ich hinaus will.

Die clients laufen unter Windows.

Kommentare und Ideen wäre willkommen.

Danke,
mamue

peschmae
30-09-2007, 12:12
wget? Das hat zumindest ne Bandbreitenbegrenzung. Konsistenzprüfen musst du natürlich anschliessend - z.B. via md5sum oder so; aber eigentlich sollte das ja nicht Blockweise nötig sein... (zumindest im LAN habe ich praktisch nie Datenfehler)

MfG Peschmä

mamue
30-09-2007, 19:14
Auf wget wäre ich nicht gekommen, obwohl ich das gelegentlich einsetze. Ich habe das Image in "kleinere" Dateien zu je 2GB verpackt und hoffe, dass die Überprüfung per md5sum nicht allzu viel Rechenleistung verbraten wird.
Wahrscheinlich bin ich seit der Geschichte mit dem defekten Switch etwas übervorsichtig geworden.

Danke,
mamue

bischi
30-09-2007, 19:55
Und eventuell solltest du das ganze sowieso verschlüsseln - kommt halt auf die transportierten Daten draufan... Und auf deine Netzwerkstruktur...

MfG Bischi

mamue
01-10-2007, 11:38
Nein, die Verschlüsselung wird einstweilen nicht nötig sein. Wenn ich verschlüsseln würde, dann das Image mit den entsprechenden Tools, sofern die das anbieten. Sensitive Daten sind in keinem Fall enthalten und rechtlich bin ich AFAIK außen vor, wenn sich jemand wiederrechtlich diese Daten beschaffen sollte. So ganz einfach kommt er da nicht dran, die Partition ist nur für Administratoren les- und schreibbar (schwacher Schutz, reicht aber - rechtlich gesehen).
Was mich noch stört, ist die Tatsache, dass sich alle Clients bei diesem Ansatz die Daten von einer Quelle holen. Ich habe je Raum maximal 100MBit, wenn ich die Hälfte für mich belege, bleiben bei 15 PC 3,3Mbit je PC (50MBit/15PC) also rund 0,4MByte. Das Image ist knapp 10GByte groß, also würde das 7 Stunden dauern. Wenn die PC untereinander die Daten tauschen könnten, die bereits vorliegen, wie das beim Filesharing läuft, könnte ich weitaus mehr Bandbreite beanspruchen.
Mit wget kann ich aber erst einmal testen, ob das überhaupt praktikabel ist, auch wenn es etwas länger dauert.

Danke,
mamue

peschmae
01-10-2007, 21:11
Dann halt torrent! Ich hatte dein OP nicht soo genau gelesen, weil ich mir dachte dass du erst mal den (zu offensichtlichen) schubs richtung wget brauchst... ;)

Es gibt sehr wohl auch Konsolenclients für Bittorrent. Zumindest unter Debian habe ich mehrere http://bitconjurer.org/BitTorrent/, http://www.bittornado.com/ wobei letzteres glaub ich auch eine GUI hat.

Wies mit dem Ram- und sonstigen Ressourcenverbrauch bei Torrent aussieht weiss ich nicht so genau; ist mir aber noch nie spürbar aufgefallen, wobei ich das eigentlich auch fast nie benutze (Azureus benutze ich natürlich nicht, es sei denn ich wolle z.B. nur eine oder zwei Dateien aus einem fetten Torrent).
Ausnahme: Die Plattenbelastung ist natürlich spürbar, wenn du nach einem abbrechen den Download wieder aufnimmst und erst mal alle Daten geprüft werden müssen.

MfG Peschmä

DJ DHG
08-10-2007, 23:09
Moin Moin!

Würde auch zu bittorrent raten.

Clients für die Konsole wären:


aria2
bittorrent (wahlweise mit GUI)
bittornado (wahlweise mit GUI)
ctorrent
rtorrent
transmission (wahlweise mit GUI)


Wie peschmae schon sagte, sind die CLI's basierten schon recht Ressourcen schonden.
Kaum spürbar. Hatte eine Zeitlang einen AMD K6 450 Mhz, 64 MB Ram.
Ca . 3-5 aktive Torrents -> 3-6 % CPU.
Was natürlich spürbar ist, ist die Überprüfung beim Start.

Aber ansonsten eine feine Sache ;)

mfg DJ DHG

unux
02-11-2007, 16:11
Hi,

ich wollte mich mal erkundigen, wie du das nun machst und ob du zufrieden mit deiner Lösung bist. Bin derzeit in einer ähnlichen Situation und bin zu dem Schluss gekommen auf eine Lösung mit rtorrent in Verbindung mit einem DHT-Patch zu bauen. Der DHT-Patch ist derzeit leider noch unofficial, denke aber nicht, dass es noch lange dauern wird, bis dieses Feature auch dem offiziellen Release beigefügt wird. Dennoch werde ich jetzt schon darauf bauen, um nicht den Tracker als SPOF zu haben.
Wenn du Infos bzgl. der Tauglichkeit hast, am besten noch ein paar Daten, dann nur her damit.

Greetz UnuX