ZFS n'est pas dans le noyau Linux officiel, et ne le sera jamais à moins qu'Oracle renouvelle la licence du code sous quelque chose de compatible avec la GPL.
Cette incompatibilité est contestée. Les principaux arguments en faveur de l'autorisation de ZFS sur les systèmes Linux tournent autour de la règle dite de "l'indépendance". Cette règle s'applique dans ce cas uniquement si ZFS est fourni en tant que module distinct du noyau, les deux ne communiquent que via des API publiées et les deux bases de code peuvent fonctionner indépendamment l'une de l'autre. L'affirmation est alors qu'aucune licence de base de code n'entache l'autre parce qu'aucune n'est une œuvre dérivée de l'autre; ils sont indépendants, mais coopèrent. Néanmoins, même selon cette interprétation, cela signifie que les modules ZFS doivent toujours être livrés séparément du noyau Linux, comme nous le voyons aujourd'hui fourni par Ubuntu.
Indépendamment de l'argument CDDL vs GPL, NetApp affirme qu'il possède des brevets sur certaines technologies utilisées dans ZFS. NetApp a réglé son procès avec Sun après le rachat d'Oracle, mais ce règlement ne protège aucun autre distributeur Linux. (Red Hat, Ubuntu, SuSE...)
Selon moi, voici vos alternatives :
-
Utilisez plutôt btrfs, car il a des fonctionnalités similaires à ZFS mais n'a pas de conflit de licence GPL et est dans le noyau principal pour les tests depuis la version 2.6.29 (publiée en janvier 2009).
Le principal problème avec btrfs est qu'il a eu une longue histoire de problèmes avec sa fonctionnalité RAID 5/6. Ces problèmes sont en cours de résolution, mais chaque fois que l'un de ces problèmes surgit, il réinitialise "l'horloge de stabilité".
Une autre préoccupation est que Red Hat a indiqué que la prochaine version de Red Hat Enterprise Linux n'inclura pas btrfs.
-
L'une des raisons pour lesquelles Red Hat prend cette position sur btrfs est qu'ils prévoient d'offrir des fonctionnalités similaires en utilisant une pile technologique différente qu'ils appellent Stratis. Par conséquent, une autre option que vous avez est d'attendre que Stratis apparaisse, avec la version 1.0 prévue pour le premier semestre 2018, vraisemblablement pour coïncider avec Red Hat Enterprise Linux 8.
-
Utilisez un système d'exploitation différent pour votre serveur de fichiers (FreeBSD, par exemple) et utilisez NFS pour le connecter à vos machines Linux
-
Utilisez ZFS sur FUSE, une implémentation de l'espace utilisateur, qui fonctionne parfaitement autour du problème de licence du noyau au détriment d'une quantité importante de performances
-
Intégrez ZFS sur Linux après avoir installé le système d'exploitation.
Le conflit de licence rend légalement discutable la distribution du système combiné en dehors de votre organisation. Je ne suis pas avocat, mais j'ai l'impression que, mis à part les problèmes de brevets, la distribution de ZFS sur Linux est à peu près aussi inquiétante que la distribution de pilotes binaires non GPL (tels que ceux de certaines cartes vidéo) avec le système. Si l'un d'entre eux vous dérange, l'autre devrait le faire aussi.
-
Passez à Ubuntu, qui fournit des modules de noyau ZFS avec le système d'exploitation depuis 16.04. Canonical estime qu'il est juridiquement sûr de distribuer le module de noyau ZFS avec le système d'exploitation lui-même. Vous devrez décider si vous faites confiance à l'opinion de Canonical ; considérez également qu'ils pourraient ne pas être disposés à vous indemniser si un problème juridique survenait.
Attention, il n'est actuellement pas possible de démarrer à partir de ZFS avec Ubuntu sans beaucoup de piratage manuel.
Incidemment, btrfs est également soutenu par Oracle, mais a été lancé des années avant l'acquisition de Sun. Je ne crois pas que les deux fusionneront jamais, ou que l'un sera obsolète au profit de l'autre en raison du conflit de licence et du problème de brevet. ZFS est trop populaire pour disparaître, mais il y aura toujours une demande pour une alternative ZFS.
Plusieurs réponses mentionnent ici le port Behlendorf ZFS.
Gardez à l'esprit que le port Behlendorf ZFS est actuellement destiné aux utilisateurs de Lustre avec des systèmes de fichiers extrêmement volumineux. C'est ce dont Lawrence Livermore National Labs, le département américain de l'énergie et d'autres centres de recherche ont besoin, car ils utilisent de très gros systèmes de fichiers (100 To - des systèmes multi-pétaoctets dans un avenir proche). Lustre fonctionne sous Linux et rencontre des problèmes lorsqu'il est utilisé pour des systèmes de fichiers au-dessus de certaines tailles. Certaines personnes espèrent résoudre ce problème en utilisant ZFS, c'est là que zfsonlinux.org entre en jeu.
Pour que ZFS soit utile pour le reste d'entre nous, le ZPL (ZFS POSIX Layer) doit être porté sur Linux, afin que les administrateurs puissent interagir avec le système de fichiers. zfsonlinux.org a une version de développement du ZPL, et KQ Infotech fournit une autre implémentation du ZPL, qui est un fork du code zfsonlinux.org.
Behlendorf veut de l'aide pour améliorer le ZPL et fusionner toutes les modifications de KQ Infotech dans le référentiel zfsonlinux.org. Si vous pouvez le faire, la communauté en bénéficiera grandement et vous serez une rockstar.
Oh oui, maintenant vous pouvez! Il y a ZFS sur Linux Project. ZFS a été porté avec succès sur plusieurs plates-formes et il existe maintenant un port de noyau Linux ZFS fonctionnel.
- Utilisez Ubuntu + ZFS natif pour Linux PPA.
- Utilisez une distribution compatible RPM, par exemple CentOS ou OLE.
- Vous pouvez compiler vous-même le package à partir des sources de votre distribution Linux.
Ma véritable expérience consiste à utiliser Ubuntu + Native ZFS - il fonctionne de manière très stable à partir de référentiels quotidiens.