Stockage ZFS
Nous tenons à exprimer nos remerciements à Ed Rawlings (Spaceinvader One) pour l'expertise et les conseils dont cette documentation de stockage ZFS a été adaptée. Ses tutoriels et ses remarques ont aidé d'innombrables utilisateurs d'Unraid à maîtriser les techniques avancées de stockage. Nous apprécions ses contributions continues à la communauté Unraid.
ZFS apporte une intégrité des données avancée, des configurations de stockage flexibles et de hautes performances à votre système Unraid. Ce guide explique les concepts fondamentaux de ZFS et vous guide dans la gestion des pools ZFS directement à partir du WebGUI d'Unraid. Que vous configuriez un nouveau stockage ZFS ou intégriez un pool existant, vous trouverez les étapes et le contexte nécessaires pour commencer en toute confiance.
Pourquoi ZFS ?
ZFS est un système de fichiers moderne et un gestionnaire de volumes conçu pour protéger vos données, prévenir la corruption et simplifier la gestion du stockage.
Avec ZFS, vous bénéficiez de :
- Vérifications automatiques de l'intégrité des données et auto-réparation
- Support RAID intégré (miroirs, RAIDZ)
- Snapshots et clones pour faciliter les sauvegardes et les retours arrière
- Envoi/réception ZFS pour une réplication efficace
- Compression à la volée
Unraid supports ZFS for any storage pool. You can create a new ZFS pool, import one from another system, or use Unraid’s unique hybrid ZFS setup: add a ZFS-formatted disk directly to the Unraid array (not a pool) and combine ZFS features with Unraid’s parity protection.
:::info[Example]
Vous pouvez utiliser les snapshots ZFS et la réplication sur un seul disque comme cible de sauvegarde, ou répliquer un pool rapide ZFS de SSD vers un disque ZFS dans l'array protégé par la parity d'Unraid - profitant ainsi du meilleur des deux mondes.
:::

L'approche hybride ZFS-in-array est utile pour des scénarios de sauvegarde ou de réplication spécifiques, mais elle ne remplace pas un pool ZFS complet. Les disques ZFS dans l'array sont gérés individuellement; vous ne bénéficiez pas de la performance combinée, de la redondance ou de l'auto-guérison d'un vrai pool multi-disques ZFS. Pour une fonctionnalité complète ZFS, utilisez toujours des pools ZFS dédiés.
Pools, vdevs et redondance
Un pool ZFS (appelé "zpool") est composé d'un ou de plusieurs vdevs (périphériques virtuels). Chaque vdev est un groupe de disques physiques avec son propre niveau de redondance. ZFS écrit des données à travers les vdevs, mais chaque vdev est responsable de sa tolérance aux pannes.
La redondance est toujours par vdev. Si un vdev échoue, l'ensemble du pool échoue, même si d'autres vdevs sont sains. Planifiez vos vdevs avec soin!

Créer un pool ZFS
Pour créer un pool ZFS à l'aide du WebGUI :
- Arrêtez le array.
- Cliquez sur Ajouter un pool.

- Choisissez un nom pour votre pool (par exemple,
raptor). - Définissez le nombre d'emplacements pour correspondre au nombre de disques que vous souhaitez dans votre ou vos vdev(s) de données principal(aux).
Ce nombre initial d'emplacements est uniquement pour les vdevs de données. Les vdevs de support (comme les disques de journal ou de cache) peuvent être ajoutés séparément après la création du pool.

- Assignez les disques au pool (l'ordre des disques n'a pas d'importance).

- Cliquez sur le nom du pool (par exemple,
raptor) pour ouvrir son écran de configuration. - Définissez le type de système de fichiers sur
zfsouzfs-encrypted(pour le cryptage LUKS).

- Choisissez votre profil d'allocation - cela détermine la redondance et les performances de votre pool.
Avant de finaliser, consultez les sections sur les profils d'allocation et la topologie pour faire un choix éclairé.


- Activez la compression si désiré (recommandé pour la plupart des charges de travail).
- Cliquez sur Terminé, puis démarrez l'array.
Ajout d'un disque ZFS à l'array (configuration hybride)
Vous pouvez ajouter un disque ZFS autonome à votre array Unraid (pas un pool ZFS) pour combiner les fonctionnalités ZFS avec la protection parity d'Unraid.
:::info[What [cette activation vous permettra]
-
Protection de parité : Le disque ZFS est protégé par la parity de l'array d'Unraid, garantissant que vos données sont sécurisées contre les défaillances d'un (ou plusieurs, selon vos parity drives) disques.
-
Intégrité des données: ZFS fournit des contrôles d'intégrité au niveau des blocs (checksums). Bien qu'un seul disque ne puisse pas s'auto-réparer du rot bit, ZFS détectera la corruption et vous alertera, vous permettant de restaurer à partir d'une sauvegarde avant que des pertes de données silencieuses ne se produisent.
-
Fonctionnalités ZFS : Vous pouvez utiliser les snapshots ZFS et la réplication sur ce disque, ce qui le rend idéal pour des cibles de sauvegarde, des ensembles de données spécifiques ou des scénarios où vous souhaitez des fonctionnalités ZFS aux côtés du stockage traditionnel Unraid.
:::
Pour ajouter un disque ZFS à l'array :
- Allez dans l'onglet Main du WebGUI.
- Arrêtez le array.
- Cliquez sur un emplacement vide sous Appareils de l'array.
- Sélectionnez le disque que vous souhaitez ajouter.

- Sous Système de fichiers, choisissez
zfsouzfs-encrypted.

- Cliquez sur Appliquer.
- Démarrez l'array et laissez le disque être formaté si nécessaire.
Choisir un profil d'allocation
Lorsque vous configurez un pool ZFS, votre profil d'allocation détermine comment vos données sont protégées, comment votre pool fonctionne et comment vous pouvez l'étendre. Voici une simple comparaison pour vous aider à décider quel profil correspond à vos besoins:

| Profil | Redondance | Performance | Extension | Efficacité de l'espace | Cas d'utilisation typique |
|---|---|---|---|---|---|
| Bande | Aucune | Rapide, mais risqué | Ajouter plus de disques | 100 % | Stockage temporaire/d'échange |
| Miroir | 1:1 (style RAID 1) | Excellente pour les E/S aléatoires | Ajouter plus de miroirs | 50% | Haute performance, extension facile |
| RAIDZ1 | 1 disque par vdev | Rapide pour les gros fichiers. Pas idéal pour les écritures petites ou aléatoires. | Ajouter de nouveaux vdevs | Élevée | Usage général, tolérance aux pannes de 1 disque |
| RAIDZ2 | 2 disques par vdev | Comme Z1 mais écritures légèrement plus lentes (parité supplémentaire) | Ajouter de nouveaux vdevs | Modérée | Données importantes, tolérance aux pannes de 2 disques |
| RAIDZ3 | 3 disques par vdev | Comme Z2, avec plus de surcharge d'écriture (pour une sécurité maximale) | Ajouter de nouveaux vdevs | Inférieure | Critique pour la mission, tolérance aux pannes de 3 disques |
:::important[How [à choisir]
- Utilisez Miroir si vous voulez la meilleure performance et une extension facile et flexible, et que vous êtes d'accord pour utiliser plus d'espace disque pour la redondance.
- Choisissez RAIDZ1/2/3 si vous voulez maximiser l'espace utilisable et stocker de gros fichiers, mais gardez à l'esprit que l'extension est moins flexible et que la performance d'écriture aléatoire est plus faible.
- Bande n'est adaptée que pour les données non critiques, temporaires - si un disque tombe en panne, vous perdez tout.
:::
Topologie et extension
La façon dont vous regroupez les disques dans des vdevs affecte à la fois la sécurité des données et la vitesse.

- Si vous placez tous vos disques dans un grand vdev RAIDZ2, vous pouvez perdre deux disques sans perte de données. Cependant, l'expansion signifie ajouter un autre vdev complet.
- Vous gagnerez une meilleure performance parallèle si vous divisez les disques en plusieurs petits vdevs RAIDZ1. Soyez prudent; si deux disques échouent dans le même vdev, vous perdrez l'ensemble du pool.
- ZFS distribue les données à travers des vdevs, pas des disques individuels, donc plus de vdevs peuvent conduire à de meilleures performances pour les charges de travail comprenant de nombreux petits fichiers ou des I/O aléatoires.
- L'extension d'un pool ZFS signifie généralement ajouter un nouveau vdev de la même configuration, pas seulement un seul disque.
Compression et RAM
ZFS offre des fonctionnalités avancées qui peuvent améliorer significativement l'efficacité et la performance du stockage d'Unraid. Deux sujets d'intérêt courants sont la compression et les exigences en mémoire.
La compression ZFS est transparente - elle fonctionne en arrière-plan, réduisant la taille des données avant qu'elles n'atteignent le disque.
Cela présente deux avantages majeurs :
- Réduction de l'utilisation du disque : Moins d'espace de stockage est consommé.
- Amélioration des performances : Écrire et lire moins de données peut entraîner des opérations plus rapides, surtout sur les processeurs modernes.

Le mythe RAM de ZFS - Cliquez pour développer/réduire
Vous avez peut-être rencontré le conseil obsolète : « ZFS nécessite 1 GB de RAM pour 1 TB de stockage. » Ceci n'est plus applicable pour la plupart des utilisateurs. ZFS utilise la RAM pour son Cache de Remplacement Adaptatif (ARC), ce qui accélère les lectures fréquemment accédées.
Unraid limite automatiquement ZFS à utiliser une portion raisonnable de la RAM de votre système (généralement 1/8ème de la RAM totale). Cela permet à ZFS de bien fonctionner sans affecter les conteneurs Docker, les VMs ou l'OS Unraid.
