| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| zfs [Le 31/03/2026, 01:22] – suppr tag brouillon | je me demande la pertinence de ces captures pour un truc aussi technique ? je les réduits un peu krodelabestiole | zfs [Le 01/04/2026, 21:42] (Version actuelle) – [Alternative] geole |
|---|
| * À la place des traditionnelles [[:partitions]], il permet d'agréger de multiples supports de stockage sur une infrastructure, à la manière du [[:RAID]] , mais en offrant davantage de souplesse que les autres solutions, car il repose sur des niveaux d'abstractions supplémentaires (voir //[[#Utilisation]]//). | * À la place des traditionnelles [[:partitions]], il permet d'agréger de multiples supports de stockage sur une infrastructure, à la manière du [[:RAID]] , mais en offrant davantage de souplesse que les autres solutions, car il repose sur des niveaux d'abstractions supplémentaires (voir //[[#Utilisation]]//). |
| |
| Il est cependant particulièrement gourmand en mémoire vive (son cache en particulier est stocké en RAM), et son utilisation est particulièrement complexe. | Il est cependant particulièrement gourmand en mémoire vive (son cache est stocké en RAM), et son utilisation est particulièrement complexe. |
| |
| Il est principalement utilisé par des [[:administration|administrateurs]] système et //[[wpfr>devops]]// pour faciliter la gestion de grappes de serveurs (//clusters//) en //[[wpfr>Centre_de_données|data centers]]//, et éviter des coupures de service dans le cadre de services d'hébergement //[[:cloud]]// (ou autre traitement de //[[wpfr>big data]]//). | Il est principalement utilisé par des [[:administration|administrateurs]] système et //[[wpfr>devops]]// pour faciliter la gestion de grappes de serveurs (//clusters//) en //[[wpfr>Centre_de_données|data centers]]//, et éviter des coupures de service dans le cadre de services d'hébergement //[[:cloud]]// (ou autre traitement de //[[wpfr>big data]]//). |
| |
| **[[:ZFS]]** permet de mettre en place une redondance et/ou concaténation proche du [[:RAID|RAID 5]] 5(([[wpfr>RAID_(informatique)#RAID-Z|RAID-Z]] sur Wikipedia)), en apportant les notions de //vdev// (//virtual device//), de //pools// et de //datasets//, qui offrent une grande souplesse, au prix d'une importante complexité (abstractions à saisir, voir //[[#Utilisation]]//). | **[[:ZFS]]** permet de mettre en place une redondance et/ou concaténation proche du [[:RAID|RAID 5]](([[wpfr>RAID_(informatique)#RAID-Z|RAID-Z]] sur Wikipedia)), en apportant les notions de //vdev// (//virtual device//), de //pools// et de //datasets//, qui offrent une grande souplesse, au prix d'une importante complexité (abstractions à saisir, voir //[[#Utilisation]]//). |
| |
| <note important> | <note warning> |
| Pour que les fonctionnalités de **ZFS** soient intéressantes (comparées à celles de **[[:Btrfs]]** par ex.), il est nécessaire de disposer d'un certains nombre de supports de stockage, idéalement de performances similaires, d'avoir aussi beaucoup de RAM, de solides connaissances en informatique, et du temps. | Pour que les fonctionnalités de **ZFS** soient intéressantes (comparées à celles de **[[:Btrfs]]** par ex.), il est nécessaire de disposer d'un certain nombre de supports de stockage, idéalement de performances similaires, d'être prêt à sacrifier entre 20% et la moitié de leur capacité, d'avoir aussi beaucoup de RAM disponible, de solides connaissances en informatique, et du temps. |
| </note> | </note> |
| |
| ==== vdevs, zpools et datasets ==== | ==== vdevs, zpools et datasets ==== |
| |
| * Les espaces de stockages **ZFS** sont organisés en **//pools//** équivalent à une [[:partitions|partition]] utilisable //pour l'[[:utilisateur]]//. Il s'agit de l'espace de stockage visible dans un gestionnaire de fichiers. Les //pools// sont des agrégats de plusieurs supports ou //clusters// de stockage, appelés //vdev//. | * Les espaces de stockages **ZFS** sont organisés en **//pools//** équivalent à une [[:partitions|partition]], ou un volume utilisable //pour l'[[:utilisateur]]//. Il s'agit de l'espace de stockage visible dans un gestionnaire de fichiers. Les //pools// sont des agrégats d'un ou plusieurs supports ou //clusters// de stockage, appelés //vdevs//. |
| * Les **//vdevs//** (pour //virtual devices//) correspondent à une [[:partitions|partition]] //pour le support matériel// -- ou à de la mémoire vive. Ils sont à disposition des //pools//. | * Les **//vdevs//** (pour //virtual devices//) correspondent à une [[:partitions|partition]] //pour le support matériel// -- ou à de la mémoire vive. Ils sont à disposition des //pools//. |
| |
| Ceci permet aux //pools// d'offrir une plus grande souplesse que les [[:partitions]] traditionnelles. Les principales différences sont qu'un même espace "physique" (//vdev//) peut être utilisé pour un //pool// ou un autre en fonction des besoins de ceux-ci, et qu'un //pool// peut s'étendre sur plusieurs supports de stockage physiques (//vdev//) différents. | Ceci permet aux //pools// d'offrir une plus grande souplesse que les [[:partitions]] traditionnelles. Les principales différences sont qu'un même espace "physique" (//vdev//) peut être utilisé pour un //pool// ou un autre en fonction des besoins de ceux-ci, et qu'un //pool// peut s'étendre sur un ou plusieurs supports de stockage physiques (//vdev//) différents. |
| |
| <note> | <note> |
| </note> | </note> |
| |
| * De plus, les **//datasets//** permettent de subdiviser chaque //pool// en sous-volumes, permettant de définir différentes politiques pour les //snapshots//, les [[:sauvegarde]], les permissions, etc. | * De plus, les **//datasets//** permettent de subdiviser chaque //pool// en sous-volumes, permettant de définir différentes politiques pour les //snapshots//, les [[:sauvegarde|sauvegardes]], les permissions, etc.\\ Ils peuvent être considérés comme des [[:arborescence|répertoires]] qui contiennent différents types de données, et amènent à différentes manières de gérer le stockage. |
| |
| <note important> | <note important> |
| Pour fonctionner correctement, un //vdev// doit conserver au minimum 20% d'espace libre. | Pour fonctionner correctement, un //pool// doit conserver au minimum 20% d'espace libre. |
| |
| On rencontre dans le cas contraire un message d'erreur de ce type : | On rencontre dans le cas contraire un message d'erreur de ce type : |
| |
| On peut activer la compression avec la sous-commande ''[[man>zfs-set|zfs set]]'' : | On peut activer la compression avec la sous-commande ''[[man>zfs-set|zfs set]]'' : |
| <code bash>sudo zfs set compression=on MesDonneesPersonnelles</code> | <code bash>sudo zfs set compression=on monStockage</code> |
| |
| La commande ''[[man>zfs-get|zfs get]]'' permet d'obtenir son état : | La commande ''[[man>zfs-get|zfs get]]'' permet d'obtenir son état : |
| <code bash>sudo zfs get compression</code> | <code bash>sudo zfs get compression monStockage</code> |
| |
| ===== Voir aussi ===== | ===== Voir aussi ===== |
| ---- | ---- |
| * [[https://forum.ubuntu-fr.org/viewtopic.php?id=2094391|Discussion]] au sujet de cette page sur le forum. | * [[https://forum.ubuntu-fr.org/viewtopic.php?id=2094391|Discussion]] au sujet de cette page sur le forum. |
| * //[[:Contributeurs]] : [[:utilisateurs:bcag2]], geole, [[:utilisateurs:krodelabestiole]].// | * //[[:Contributeurs]] : [[:utilisateurs:bcag2]], [[:utilisateurs:krodelabestiole]].// |