Linbo: overlayfs statt rsync?

Hallo zusammen,

seit einigen Jahren ist overlayfs offiziell im Kernel integriert und wird inzwischen nahezu fuer alle Live-Medien genutzt. Damit koennte man die sync-Zeit bei Linuxclients auf 0 reduzieren. Habt ihr darueber schon einmal nachgedacht? (@thomas)

LG Yannik

Hallo Yannik.
DarĂĽber wurde hier schon mehrfach diskutiert, z.B. hier:


(ab Beitrag #7 geht es so allmählich damit los)
Schöne Grüße,
Michael

Ah, dein Post geht ein wenig in die Richtung. Tatsaechlich waere bei LVM snapshots eine merge (der Zeit kostet, allerdings dennoch schneller als rsync sein wird) notwendig, da per COW die alten Daten in ein separates LV weggeschrieben werden. Ich vermute recht stark, dass das bei ZFS ebenfalls so ist?

Daher finde ich die Idee vom overlayfs interessanter, da dort per COW die neuen Dateien separat geschrieben werden.

Ja, ZFS/btrfs machen auch Copy on Write.
Die Idee ist also nicht neu aber ich glaube nicht, dass das sehr weit oben auf der to-do-Liste der Entwickler steht. Es funktioniert ja im Moment noch alles – auch wenn die LINBO- Images in letzter Zeit tatsächlich riesig geworden sind…

Ok - ich wollte das hier nur mal einbringen :slight_smile:

Moin!

ein Overlay-Dateisystem fürs Imaging zu nutzen, steht meiner Todo für Linbo. Aber die Lösung die Yannik vorschwebt, muss ja auf dem Client eingerichtet werden. Beim Booten wird ein transparentes Dateisystem übergemountet, das alle Schreibzugriffe abfängt, sodass das ursprüngliche Dateisystem unverändert bleibt. Das erspart das lokale Syncen. So ein Vorgehen wurde vor einiger Zeit z.B. in der c’t dokumentiert. Aber wie gesagt, das ist eine Geschichte, die im Betriebssystem des Clients abläuft und hat mit Linbo erstmal nix zu tun. Sicher könnte man ein so präpariertes Client-BS auch in ein Linbo-Image packen und ausrollen.

VG, Thomas

1 Like

Moin Thomas,

was meinst Du denn mit „ein Overlay-Dateisystem fürs Imaging zu nutzen“?

Ich denke, dass das overlayfs letztlich im Client-Image genutzt werden muss, ist klar. Allerdings könnte man dies fuer weniger bedarfte Administratoren durchaus Linbo-Seitig als automatisierten Patch des Clientsystems anbieten. Wenn ich mich recht erinnere, gibt es in Linbo ja sogar die Möglichkeit, MS-Produkte zu aktivieren… :wink:

LG

Wäre eine effiziente Methode differentielle Images anzuwenden. Man schreibt in ein neues Image nur die Differenz zum Original. Ist klein und lässt sich schnell verteilen. Auf dem Zielsystem wird das Differenzimage per Overlay über das ursprüngliche Image gemountet und dann gesynct.

Das Client-BS per Linbo so zu präprieren, dass es Overlayfs verwendet, sollte doch per postsync schon möglich sein.

Ansonsten sehe ich in der direkten Apassung des Client-Betriebssystems die effizientere Methode. Linbo mit immer mehr Funktionen zu ĂĽberfrachten, die mit der eigentlichen Aufgabe des Imagings nichts zu tun haben, halte ich fĂĽr keine gute Idee.

VG, Thomas

1 Like

Ja, ich gebe dir recht. Eine gute Dokumentation dieser Möglichkeit wuerde sicherlich bereits einiges bewirken. Wer dann nicht will - selber Schuld.

LG Yannik

Hi.
Der Einwand von Andreas (@Till) war ja, dass man das für alle Client-Betriebssysteme realisieren müsste. Wenn man es zunächst „nur“ auf der LINBO-Ebene angeht, wäre es daher imho weniger komplex, da man dort nur das overlayfs (oder eben o.g. btrfs/ZFS mit Snapshots) laden müsste.

Ich sehe auch noch nicht ganz ein, warum es ein Problem ist, wenn man pro .cloop für die Clients serverseitig ein ZVOL oder Dataset aufmacht?! Natürlich müsste im v7-Server dann die Partition, auf der die cloops liegen, ZFS-formatiert sein. Aber wenn das gemacht ist (ist hier schon lange der Fall), sehe ich noch nicht das Problem, warum es dann nicht gehen sollte? (@Maurice: Kannst du evtl nochmal kurz erklären, wo du ein Problem gesehen hattest?)

Bis später,
Michael

Hi Michael,

wenn das alles so einfach ist, dann mach doch einfach ein PR. @thomas betreut das Linbo-Paket und wird es sicher dann anschauen.

VG, Maurice

Hallo Maurice (@Maurice)

Na ja – ob es wirklich so einfach ist hat halt noch nie einer ausprobiert. Du hattest „damals“ am Telefon ein Argument genannt, weshalb es evtl doch nicht so einfach ist. Und genau dieses Argument habe ich leider vergessen … hatte aber mit den zvol-Containern oder deren Größe (?) zu tun … vielleicht kannst du’s ja nochmal auf den Punkt bringen?

Schöne Grüße,
Michael

Hallo Thomas (@thomas).
Ich hatte in dem anderen Beitrag ja schon mal gefragt:
Wäre es ausreichend, dass man diesen Eintrag scharf stellt, um z.B. btrfs unter LINBO zu aktivieren?
https://github.com/linuxmuster/linuxmuster-linbo/blob/master/conf/kernel64.conf#L3407
Oder ist es damit nicht getan? Wenn man auf diesem Weg dem LINBO-Kernel ein snapshotfähiges Filesystem beibringen könnte, wäre das die erste Hürde … und ich sehe noch nicht, warum Du es lieber auf Client-Seite machen würdest?

Ich meine, dass man auf diese Weise das Aktualisieren der Caches aller Clients dramatisch reduzieren könnte, da nur noch die Änderungen aktualisiert werden müssen … korrigiere mich, wenn ich falsch liege…!?

Schöne Grüße,
Michael