Il 20 maggio di quest'anno si è tenuta a Parigi la prima conferenza europea Open ZFS. È stato un grande evento e un privilegio assoluto per noi partecipare come presentatori e sponsor. L'ospite principale è stato il co-creatore di ZFS, Matt Ahrens.
Abbiamo iniziato con la presentazione da parte di Matt dello stato attuale di OpenZFS, dei miglioramenti futuri e delle funzionalità in programma. Tutto è iniziato con una bella presentazione della cronologia di ZFS. Come lo sviluppo sia iniziato con soli 2 ingegneri nel 2001 alla SUN. È proseguito poi con il rilascio di ZFS come open-source nel 2005 e il successivo porting su FreeBSD, Linux e MacOSX.
Per quanto riguarda lo stato attuale di OpenZFS, una caratteristica che lo distingue è la latenza di scrittura più fluida, per la quale possiamo ringraziare Adam Leventhal e Matt Ahrens (maggiori dettagli qui): L'acceleratore di scrittura di OpenZFS), i feature-flag per attivare particolari funzioni come i segnalibri, la distruzione asincrona del dataset, il crash dump di più vdev o il dataset estensibile. Un'altra novità di OpenZFS è la compressione LZ4. Abbiamo modificato il software di gestione in Syneto Storage OS per creare automaticamente tutti i nuovi set di dati con la compressione LZ4 abilitata. I guadagni in termini di prestazioni sono davvero notevoli.
Il motivo per cui OpenZFS è stato creato è stato quello di ridurre le differenze di codice tra le piattaforme e di creare un repo centrale dove tutti possano partecipare e condividere il codice. Un altro obiettivo è quello di creare una suite di test che sia multipiattaforma, in modo che le persone possano facilmente verificare che le nuove funzionalità o i miglioramenti siano compatibili tra loro. Sarebbe molto utile se tutte le modifiche fossero inviate a un repo centrale da cui tutte le diverse distribuzioni possano prelevare o inviare le modifiche. Questo è il futuro e dovremmo iniziare a lavorarci attivamente.
Il futuro di OpenZFS sembra molto luminoso e ci sono alcune caratteristiche sorprendenti che stanno per essere introdotte molto presto. Per citarne solo alcune:
Una cosa che ritengo molto importante come miglioramento futuro è il programma di canali ZFS per un'amministrazione più ricca. Ciò consentirà il binding per diversi linguaggi di programmazione e permetterà agli script di eseguire e manipolare gli interni di ZFS in una singola operazione atomica. ZFS non è molto facile da programmare, perché l'unico modo per scrivere strumenti di amministrazione su ZFS è analizzare l'output dei comandi zfs/zpool o usare libzfs, il che è una vera seccatura. Un modo per far sì che un maggior numero di sviluppatori adotti o costruisca strumenti attorno a ZFS è quello di fornire un ambiente facile per i programmatori. Non vedo un messaggero migliore per ZFS e le sue incredibili caratteristiche che i programmatori stessi.
Cosa abbiamo fatto per aiutare? Abbiamo tenuto una presentazione su come utilizziamo ZFS e su quali sono le sue caratteristiche su cui costruiamo le nostre soluzioni. Dan Vatca, il nostro CTO, ha tenuto la sessione.
Per quanto mi riguarda, ho tenuto un discorso tecnico su come noi, qui a Syneto, implementiamo continuamente un sistema operativo di storage basato su ZFS. L'intervento riguardava principalmente il modo in cui abbiamo creato l'infrastruttura di compilazione e di test, e il modo in cui su ogni commit del codice sorgente di Syneto Storage OS viene attivata un'ampia suite di test, composta da oltre un migliaio di test. Questo include anche l'intera suite di test di ZFS.
Alla fine della conferenza le persone si sono riunite e hanno mangiato pizza e birre condividendo le loro esperienze. È stato un grande evento che sicuramente continueremo a organizzare in futuro. Voglio davvero ringraziare gli organizzatori Alyseo, Erastor, Delphix, DDR Drive, Hybrid Cluster, High Availability.com e tutti coloro che sono venuti a condividere le loro esperienze su ZFS. Grazie Matt per essere venuto e aver condiviso la tua esperienza. Ho la sensazione di aver fatto nuove amicizie.
Se volete dare un'occhiata a tutte le diapositive e alle presentazioni, sono disponibili qui: Diapositive e presentazioni.
Buon lavoro con ZFS.