Time Slider
Noch ein Nachtrag zur letzten Sendung, da wir ja so auf ZFS stehen und laufend sein Potential preisen. Auf OpenSolaris gibt es seit ein paar Monaten das Backupsystem “Time Slider“. Dazu gibt es ein schickes kleines Plugin für die “Finder”-Oberfläche namens Nautilus. Dieses Plugin liefert eine kleine aber feine Schnittstelle für die Snapshop-Funktionalität von ZFS. Schön erklärt wird das in diesem Screencast.
So und nicht anders sollte das in Mac OS X auch integriert sein. Die aktuelle Time Machine Oberfläche mit dieser Disco-Optik und unfassbar tranigen Performance sollte meiner Meinung nach es nicht mal mehr in Snow Leopard schaffen. Wer das wirklich mal benutzt hat weiß vielleicht wovon ich rede. Das Feature sollte man vielleicht Microsoft andrehen, damit sie es in Windows 7 einbauen, denn da passt es wenigstens hin. Wozu ist ein “Finder” da, wenn man damit nicht mal alte Versionen einer Datei finden kann?
Bevor hier gleich entsprechende Kommentare kommen: ich weiß, dass die Snapshots per se kein Backup im Sinne einer separaten Kopie der Daten darstellen. Aber sie übernehmen die Funktionalität des zeitbasierten Rollbacks von Daten und das OHNE dass man ein Backupmedium zum Einsatz bringen muss. Funktioniert also auch während der Arbeit im Zug oder wo auch immer.
Dazu haben ZFS-Snapshots den großen Vorteil, dass ein Backup von ihnen auch später noch durchgeführt werden kann (unter Erhaltung aller Zeitmarken!). Dazu kommt, dass Snapshots sehr genau sind: was Time Machine eigentlich genau sichert, während es eine halbe Stunde lang ein 200 GB Dateisystem via WLAN auf eine Time Capsule synct, weiß wohl so genau niemand. Ist eine Datei im Backup auf dem Stand zu Beginn des Backups oder am Ende des Durchlaufs? Das ist bei ZFS-Snapshots zumindest klar definiert. Dazu kommt, dass man bei Snapshots nicht lange rumdenken muss, was gesichert werden muss, wenn das Backup einsetzt. Das “Preparing Backup…” dauert bei Time Machine noch viel zu lange. Außerdem ist das differentielle Wegschreiben eines Snapshots eine in ZFS eingebaute Funktionalität: mit einer Kommandozeile kann die Daten via SSH auf ein anderes ZFS-Dateisystem übertragen. Einfach, sicher, elegant.
Ich kann nur hoffen, dass Apple die Eier hat, ihr Time Machine voll auf die Möglichkeiten von ZFS zu optimieren, sobald sie ZFS vollständig und stabil in ihr OS integriert haben. Ich halte Apple für klug genug, diese Vorteile zu begreifen, allerdings weiß ich nicht, ob sie mutig genug sind, eine Weile zweigleisig zu fahren, solange HFS+ noch eine Realität ist (und das wird es noch ein paar Jahre bleiben).
in iTunes abonnieren
Ich hätte gerne folgendes System, eine Mischung aus Time Machine und Time Slider:
Jede Stunde (oder von mir aus auch häufiger) wird lokal ein ZFS-Snapshot von dem grade aktuellen Zustand gemacht. Wenn ich eine externe Platte anstecke (bzw. halt in das passende WLAN gehe) werden diese Abbilder automatisch auf eine andere Platte kopiert und bis auf die letzten paar (3-4? Müsste man gucken, was da praktikabel ist) lokal gelöscht.
Das hätte IMO einige Vorteile gegenüber beiden Lösungen: Es schützt mich vor meinen Fehlern indem ich jederzeit (z.B. auch unterwegs) Sachen rückgängig machen kann. Gleichzeitig schützt es vor einem Plattencrash, weil die Images auf einer anderen Platte liegen. Ich verliere bei einem Plattencrash nur das, was seit dem letzten Anstecken der externen Platte passiert ist. Und es ist weiterhin so automatisiert wie Time Machine, was sehr wichtig ist – Backups, die manuelle Eingriffe erfordern, werden im Zweifel nicht gemacht. Außerdem habe ich durch das System lokal keinen allzu großen Platzbedarf.
Kann ZFS eigentlich einzelne Verzeichnisse von Snapshots ausnehmen? Mein Podcast-Verzeichnis z.B. möchte ich nicht mitgesichert haben, das frisst nur unnötig Platz. Grade so Sachen wie 720P-Video-Podcasts die dauernd neu dazukommen und dann wieder verschwinden muss ich nicht gesichert haben.
Wer Lust hat das mal auszuprobieren, dem sei Virtual Box (auch Sun Open Source) empfohlen. Darin kann man Solaris ohne großen Stress installieren, einziges Caveat: die VM muss mindestens 512 MB RAM bekommen sonst bleibt der Installer mit einer kryptischen Fehlermeldung hängen. Große Schnelle Platte und Breitbandinternet empfohlen.
Mein Eindruck bei Time Machine war ja von Anfang an, dass es durch ZFS Snapshots erst inspiriert wurde. Dann wurde ZFS nicht fertig und Apple musste sich schnell die jetzige kranke Lösung aus den Fingern saugen… So’n revolutionärer neuer Storage Stack ist halt nicht mal eben portiert. Mal sehen ob’s für Schneeleo was wird. Also ich würde da keine Kiste Mate drauf wetten.
@Thomas
Wenn Du bei ZFS Verzeichnisse vom Snapshot ausnehmen willst, machst Du einfach ein neues (ZFS-) Filesystem. Entsprechend erstellst Du dann den Snapshot nur vom Home-Verzeichnis, nicht von den Filesystemen/Unterverzeichnissen, die nicht gesichert werden sollen.
Mit ein bisschen Script-Kenntnissen lässt sich das, was Dir vorschwebt, schon jetzt problemlos umsetzen – ob unter *BSD oder OS X, egal, beides geht.
Full Ack erstmal. Ich will auch ZFS unter OS X.
Ich bin eigentlich heute noch überrascht, dass Apple Time Machine OHNE ZFS gemacht hat. IMHO sind die Features in der falschen Reihenfolge eingeführt worden. Oder anders herum: (Mindestens) Die halbe Arbeit an Time Machine war für die Katz, wenn ZFS erstmal drunter liegt.
Und ich gebe dir auch recht, wenn du die Oberfläche von OpenSolaris eleganter findest. Die letzten Versionen auf einen Klick sehen zu können, ist zwar weniger beeindruckend als das die 3D-Holodeck-Version von Apple, aber sie erledigt den Job definitiv schneller.
Schade, dass man von ZFS so wenig hört. Scheint auch im Schneeleoparden nichts zu werden, befürchte ich. Obwohl gerade so eine grundlegende Geschichte in so ein “Architektur-Nicht-Features” Upgrade rein gehören würde.
@egghat: read/write ZFS ist zumindest für Snow Leopard Server explizit angekündigt. Von daher rechne ich fest damit.
Dass die Arbeit an Time Machine für die Katz war sehe ich nicht so, denn selbst wenn wir jetzt im nächsten Release ein Full Featured ZFS sehen wird es noch lange dauern, bis auch der letzte von HFS+ weg ist. Das hat auch viel mit Rückwärtskompatibilität zu tun und auch Leopard kann ja ZFS nur lesend verwenden. Somit hat Apple allen Benutzern von HFS+ zumindest sofort eine Lösung für die Datensicherung in die Hand gegeben, auch wenn sie noch nicht alle Geek-Bedürfnisse erfüllt. Für den normalen Benutzer sind Time Machine und besonders die Time Capsule ein Segen.
@egghat und eigentlich hat Apple auch nicht viel Arbeit in Time Maschine investiert. ein Gui, und ein paar Skripte die im Endeffekt nichts anderes machen als nen rsync mit Hardlinks.
Das Gui bring halt viel Elfenstaub mit.
@buliwyf: Time Machine ist mehr als rsync, da es auf den FSEvents von Mac OS X basiert und nicht auf einem Scanning der Directories. D.h. es basiert auf den eigentlichen inodes und nicht auf den Pfadnamen. Geht schneller und berücksichtigt z.B. verschobene Dateien, die rsync nicht berücksichtigen würde. Die block-basierten Diffs von ZFS sind dem aber weit überlegen.
@Tim: Die Verschwendung gilt natürlich nur unter der Bedingung, dass die Reihenfolge falsch war,
Den Leuten TimeMachine vorzuenthalten, wenn sie nicht auf ZFS upgraden, fände ich übrigens nicht so schlimm. Das macht Apple andauernd. iLife09 gibt’s auch nicht ohne Leopard (als eines von 1000 Beispielen). Also IMHo hätte Apple ruhig erst ZFS und dann Time Machine machen können. Aber für Apple hat TimeMachine den Vorteil, das man damit auch die Capsules verkaufen kann. Wobei … denk denk … eine TimeCapsule auch bei ZFS auf beiden Seiten (Computer und Kapsel) noch sinnvoll wäre, weil die Kapsel etwas mehr Grips bräuchte als eine normales NAS hat.
(Übrigens gibt es aktuell den Leopard durch das crashende Pfund sehr günstig in UK. Insbesondere der Server ist für 312 Pfund (Pfund fast 1:1 zum Euro) ne Überlegung wert.)
@bulliwyf: Stimmt natürlich auch. Die technik unterdrunter Ist auch nicht viel mehr als z.B. rbackup.
“Ich kann nur hoffen, dass Apple die Eier hat”
Damit hast Du es sehr schön auf den Punkt gebracht. Das meine ich völlig ohne Ironie. Es gehört schon was dazu, die Leistungen eines Anderen zu honorieren und zu übernehmen, statt wieder etwas fast-gleiches nachzubasteln – und damit meistens die Fehler nochmals machen zu müssen, die “der Andere” schon im Griff hat.
Ich würde mich freuen wenn Apple und Sun weiterhin zueinander finden.
Ich bin ja mal gespannt, wie erfolgreich ZFS wird.
Da es nicht unter der GPL 2.0 veröffentlicht wurde, weil Sun anscheined einen kleinen Krieg mit Linux gegenüber ihrem opensolaris anfangen wollte/noch will, bin ich ja gespannt was für Alternativen es noch geben wird.
Da ein Datensystem ein wesentlicher Bestandteil eines Servers ist und Apple in diesem Markt noch nicht sonderlich entwickelt ist wie auch (open)solaris (zumindestens auf x86-Prozessoren), stehen wohl die Chancen gut, dass ZFS es eventuell (sollte es weiterhin so schlecht in Mac OS X integriert sein) nicht schaffen wird.
Ich wünsche ZFS dennoch viel Erfolg.
Wenn Sun es Microsoft verkaufen könnte, wäre das eine gute Idee.
(Zumindest die Windows Server Version sollte es unterstützen)
Dadurch könnte sich das Blatt zum Positiven wenden.
Ansonsten sehe ich keine echte Chance ohne die GPL 2.0 für ZFS,
IIRC können die Backups von Snapshots auch schlicht in Dateien (oder auf Band, wem das liegt) weggeschrieben werden. damit sollten sich super backup-varianten basteln lassen, egal was am anderen ende für ein medium/system hängt.
@harkai: Linus hat gerade erst btrfs in den Linux-Kernel aufgenommen. Damit gibt es keinen Bedarf mehr für ZFS im Kernel und per FUSE kann man ZFS ja schon heute unter Linux nutzen.
Nicht ganz Topic, ich versuche es trotzdem:
Gibt es eine Möglichkeit (ein Fix) damit ich mein MacBook Air mit meiner Time Capsule im 802.11b/g Modus betreiben kann? Ich will mein iPhone, ein MacMini und eben das MacBook Air in einem WLAN betreiben, auch wenn die Datenübertragung zur Festplatte dadurch langsamer als im n-Modus läuft. Ich bekomme beim MacBook Air die Meldung “Zeitlimit überschritten”. Die anderen Geräten laufen prima. MBA läuft nur im n-Modus.
@Harkai: Der Grund für die Lizensierung des OpenSolaris Sourcecodes unter der CDDL (die der Mozilla Public License sehr ähnlich ist) und nicht unter einer GPL liegt darin, dass die OpenSolaris-Leute gerne den Entwicklern die Kontrolle über ihre eigenen Sources und ihre eigenen Lizensierungs-Möglichkeiten überlassen wollen.
Dazu gibt es einen Haufen Diskussionen auf der ZFS-Mailingliste, z.B. ab http://mail.opensolaris.org/pipermail/zfs-discuss/2007-April/039341.html
Doch der beste Anfang zur Aufklärung ist wahrscheinlich die CDDL-FAQ: http://www.opensolaris.org/os/about/faq/licensing_faq/
Tatsächlich ist es nicht die CDDL-Lizenz, die eine Aufnahme des ZFS-Sources in den Linux-Kernel verhindert, sondern die Praxis der Kernel-Entwickler, keinen non-GPL in “ihren” Kernel aufzunehmen. Je nach Lizenzinterpretation meinen nämlich die einen, dass die GPL ein (wenn auch dynamisches) Linking des Kernels mit einem non-GPL-Modul verhindert, die anderen meinen, dass das schon möglich sein sollte (schliesslich gibt es auch proprietäre Grafiktreiber von NVIDIA, die man trotz böser, proprietärer Lizensierung mit dem Kernel spielen lassen darf). Aber hier sind wir schon mitten in der legalen Grauzone und ich bin kein Anwalt.
Niemand hätte was von einem Sun-Linux-Krieg, hier geht es alleine darum, den Entwicklern das Recht auf Wahl ihrer Lizensierung zu lassen. Alle OpenSolaris-Fans, die ich kenne finden Linux auch gut und der “Krieg” zwischen OpenSolaris und Linux ist nicht anders als der “Krieg” zwischen FreeBSD und Linux. Am Ende des Tages sind wir doch eh alle eine große Open Source Familie, die Anwendungen sind zu 99% gleich, nur die Kernel, die kernenahen Tools und die “Skins” unterscheiden sich zwischen den OSen. Der Anwender benutzt trotzdem weiter seinen Thunderbird und Firefox und Songbird und bash usw.
Und zu guter Letzt ist ZFS nicht einfach nur ein Kernel-Modul, dass man dranlinkt und schon ist alles dicke Party, sondern es spielt mit zahlreichen Kernel-Subsystemen zusammen, die alles mögliche unterstützen: Boot-Mechanismus (inkl. ggfs. GRUB), Installer, Memory-Management, IO-Bandbreiten-Management, Scheduling, Volume Management, Device-Tree, Fault-Management (gibt’s unter Linux gar nicht), DTrace (dito), Service Management (dito), NFS-Server, iSCSI Targets und Server, CIFS-Service etc. Das sieht man an den Schwierigkeiten, die Apple noch damit hat und daher: Hut ab vor der FreeBSD-Community, die ihren ZFS-Port so schnell und so gut hingekriegt hat!
@Harkai: Nunja … brtfs ist defintiv noch jahre von der Primetime entfernt und selbst dann ist es an vielen Stellen wie Systemtap. Ähnliche Features, aber stellenweise nicht zu Ende gedacht. Aber eine gute Möglichkeit für Linux Fanbois sich nicht mehrer ihrer Filesysteme schämen zu müssen. Mal ernsthaft … ich bin gespannt, was am Ende wirklich bei brtfs herauskommen wird und wie weit ZFS sein wird, wenn brtfs so weit ist.
Zudem: Ich würde in ZFS nicht die Zukunft absprechen. Es ist ein im open-source verfügbares Filesystem, dessen Lizenz eine nette eigenschaft hat. Man muss nur änderungen an bestehenden Sourcefiles freigeben, kann aber den Rest für sich behalten. Das entspricht ja so ein wenig der Vorgehensweise von Apple.Und was nützt beispielsweise ein brtfs, das nicht in den Kernel von MacOS integriert werden kann, weil es der GPL unterliegt. HFS+ wird nicht ewig halten. Eigentlich ist ein Ersatz da überfällig und ZFS ist für Apple einfach die beste Wahl.
@Tim Pritlove: Nicht nur normale User … ich finde es äussert praktisch, das ich mich einfach nicht mehr um Backups kümmern muss.
@Thomas: Korrekt, zfs send intial und danach zfs send incrementals …. die koennte man auf ein beliebiges Medium spielen und sich fürs Recovery von einer Platte ziehen.
Na, was meint ihr was die da bequatschen?
http://blogs.sun.com/bonwick/en_US/entry/casablanca
PS: manche werden auch erstmal schauen müssen wer das ist! ;)
Nette Idee Denis aber leider ist der Blogeintrag vom Mai 2008, falls sich da was ergeben hätte, hätten wir sicherlich schon davon gehört. Aber ich offe, dass ich mich irre.
Ich bin auf interessante Hardware für das “ZFS-Projekt” gestoßen: Den VIA ARTiGO A2000.
Das ist sozusagen ein NAS-Barebone mit VIA-x86-Prozessor, aber leider nur Platz für zwei Platten. Ich hab auch gelesen, dass VIA FreeBSD als unterstütztes Betriebssystem nennt, auf der Webseite wird es allerdings nicht aufgeführt.
Die 2er Version ist ein wenig klein für ZFS. ZFS auf 2 Platten macht wenig Sinn, weil man mit 2 Platten nur einen Spiegel machen kann und da spielt ZFS seine Stärken nicht aus.
Besser wäre schon das, ist aber noch nicht lieferbar:
http://www.via.com.tw/en/products/embedded/nsd7800/
Das Teil schreit nach einer 4 Plattenversion, kann ich aber nicht finden.
@egghat Das Teil sieht interessant aus, aber es wird wohl keine 4 Platten Version geben und ich kann mir nicht vorstellen, dass die Hardware ordentlich performed
Bin per Zufall über diesen Beitrag gestolpert und habe noch einen Hardware Vorschlag:
http://www.tranquilpc-shop.co.uk/acatalog/BAREBONE_SERVERS.html
Irgendwo habe ich auch gelesen, dass Opensolaris auf dem Ding läuft.