Tuto FreeNAS 9.3 : Création du pool

Troisième partie de la série de tutoriels consacrée à la mise en place d’un NAS avec FreeNAS. Nous avons grâce à l’étape précédente, une installation toute neuve et configurée de FreeNAS. Attaquons nous maintenant à la création de l’espace de stockage : le pool ZFS.

Depuis cette version, FreeNAS ne propose plus qu’un seul système de fichier à la création : le ZFS. Il est donc indispensable avant d’aborder cette partie que vous maîtrisiez les fondamentaux de ZFS. Si ce n’est pas le cas, j’ai fait un article sur le sujet pour aborder les bases. Idem pour les notions de RAID, il y a un article sur Wikipédia.

Penser son pool

Il est important de bien savoir ce que l’on veut faire avec ses disques car les modifications ultérieures sans détruire le pool sont limitées.

Un autre point très important est de bien garder en tête qu’un RAID quel qu’il soit n’est pas une sauvegarde. Un RAID ne protège pas des erreurs de manipulation, ne protège pas d’une grosse défaillance matériel (alimentation par exemple), ne protège pas du vol de la machine, etc… Si le sujet de la sauvegarde vous intéresse, j’ai posté là encore un mot à ce sujet, il date un peu mais c’est toujours d’actualité. Le RAID quel qu’il soit doit être vu comme un moyen d’assurer la disponibilité des données et la continuité du service en cas de panne mais pas comme un moyen de sauvegarder ses données.

Vous seul pouvez jugez de vos besoin et de vos attentes en terme de sécurité/valeur des données/utilisation/coût. Typiquement les possibilités d’organisation sont :

  • Un ou plusieurs vdev miroirs de 2 disques offrant une bonne sécurité et de très bonnes performances en terme d’opérations par secondes, au prix d’un coût de stockage multiplié par 2.
  • Un vdev RAIDZ de 3 ou 5 disques : perte d’un disque possible, sécurité moyenne, plus grand volume offert. Plus il y a de disques et plus le risque est grand. Typiquement une utilisation « Médias »
  • Un vdev RAIDZ2 de 6 disques : perte de 2 disques possible, meilleur sécurité pour les grands vdev (maxi 10 disques par vdev recommandé), au prix d’un espace utilisable plus amputé et donc un coût plus important. Typiquement une utilisation « Stockage »

Le RAIDZ2 tend à être privilégié par rapport au RAIDZ simple pour les pools récent avec des disques de grande taille (plus de 1-2To) car plus la taille du pool est importante et plus l’opération de reconstruction après remplacement d’un disque va être longue et intense. Le risque de perdre un second disque est alors plus important. D’autre part comme l’a souligné SmallGuy en commentaire : plus le disque est grand, plus la probabilité d’avoir une erreur irrécupérable sur l’un des disques restant est forte, cette erreur sera détectée par ZFS grâce à la checksum mais ne pourra pas être corrigée faute de redondance à ce moment là dans un RAIDZ1. L’erreur peut n’impacter qu’un fichier mais peut aussi conduire à l’impossibilité de reconstruire le pool.

Pour notre tuto qui s’inscrit dans un usage familial, nous allons faire un RAIDZ avec 3 disques de 1To.

ATTENTION : Un RAID ne remplace pas une sauvegarde et vous seul restez responsable de vos choix, encore plus quand il s’agit de la sécurité de données personnelles.

 

Construction du pool

On se rend dans Storage -> Volumes -> Volume Manager pour découvrir la nouvelle version du gestionnaire de volume. Celui ci inclus des protections permettant théoriquement de limiter les erreurs du style ajout d’un vdev stripe à un vdev RaidZ par exemple.

Volume Manager : exemple d'un pool miroir

Volume Manager : exemple d’un pool miroir

Toutefois les protections peuvent être gênantes : il ne permet pas notamment de créer un vdev avec des disques de différentes tailles, alors que cela est tout à fait possible sachant que tous les disques ne seront exploité qu’à la taille du plus petit. Si vous êtes gêné par cette limitation, il faudra cliquer sur le bouton Manual Setup et l’ancien gestionnaire de volume. Son utilisation est décrite dans cet ancien tuto.

Revenons à notre volume et commençons par lui donner un nom, sachant que mirror, stripe, raidz, raidz2 et raidz3 sont des noms réservés. Il vaut mieux trouver quelque chose qui ressorte bien.

Il est possible ici de choisir en cochant la case Encryption, de crypter le pool. Cela s’effectue directement au niveau des disques puis le pool est construit par dessus, c’est utile si vous travaillez à la CIA, sinon… chacun son choix mais 2 choses à prendre en compte : d’une part si vous perdez la clé de cryptage, impossible de retrouver les données, et d’autre part, il est recommandé d’avoir un processeur supportant le jeu d’instructions AES-NI pour ne pas avoir de diminution de performances.

Volume Manager, création d'un RaidZ

Volume Manager, création d’un RaidZ

Dans Available disks, en passant la souris sur show on voit la liste des disques détectés par le système. Un clic sur le bouton + les ajoute tous dans le pool. Sinon en faisant glisser le petit curseur rond, on choisit le nombre de disque à mettre dans le pool.

Le gestionnaire nous propose dans le menu déroulant la géométrie optimale : ici avec 3 disques un RaidZ. Ça tombe bien c’est ce qu’on voulait (on peut aussi faire un miroir triple si on manque de confiance ou un stripe si on aime le risque !).

Quand tout est bon, un clic sur Add Volume et le pool est créé. Cela prend quelques temps.

 

Visualiser la structure

Pour contrôler l’organisation de notre pool on se rend dans Storage -> Volumes -> View Volumes. Cette page liste les pools et datasets présents sur le système, attachons nous à bien la comprendre :

Visualiser les volumes

Visualiser les volumes

En tête de liste on retrouve notre pool : Stockage. Imbriqué en dessous, créé automatiquement en même temps, le dataset « Stockage ». Le dataset est le système de fichier ZFS en lui même, alors que le pool représente l’espace qui lui est offert. On retrouve là toute la logique de ZFS : pour le système de fichier, quel que soit la structure sous-jacente dans le pool, ce n’est qu’un espace unique à diviser à volonté. Lorsque l’on créera d’autre datasets plus tard ils seront dans le dataset Stockage.

Un clic pour sélectionner une ligne fait apparaître en bas les boutons d’actions. Ici j’ai sélectionné le pool, si on clic sur le bouton Volume Status on obtient l’état et le détail du contenu du pool :

Détail de l'état du pool

Détail de l’état du pool

On retrouve donc notre pool stockage et les vdev qui le constituent : on est là dans la partie « gestionnaire de volume » de ZFS. Donc on peut voir un vdev de type raidz1 qui porte le numéro 0. Celui ci est composé des 3 disques ada1, ada2 et ada3. Si on agrège d’autres vdev dans le pool, ils apparaîtrons en dessous au même niveau que le vdev existant.

Les colonnes Read, Write et Checksum indiquent les erreurs éventuelles de lecture, écriture et sommes de contrôle : il vaut mieux que tout reste à 0

 

Comprendre et adapter les options de ZFS

Pour finir à propos de notre espace de stockage, nous allons jeter un œil aux options ZFS : toujours dans Storage -> Volumes -> View Volumes (ou directement sur le bouton Storage du haut), nous sélectionnons le dataset (et pas le pool) et cliquons en bas sur le bouton Edit Options qui est celui avec la clé plate.

Options ZFS

Options ZFS

On voit ici les paramètres appliqués par défaut lors de la création du dataset racine. Premier paramètre, le choix de l’algorithme de compression, ici LZ4 : ZFS permet, pour gagner de la place, de compresser au niveau du système de fichier les données stockées. LZ4 est un algorithme rapide qui impactera peu les performances, il est conseillé de le laisser activé.

Enable atime, pour « access time », contrôle le fait d’actualiser ou non l’heure d’accès stockée dans les métadonnées d’un fichier quand il est lu. Mis sur Off, cela permet d’économiser des écritures lorsque l’on lit simplement un fichier. C’est le réglage que j’utilise mais cela peut parfois troubler certains logiciels de sauvegardes par exemple.

Un mot sur la Deduplication enfin, dans le cadre de notre usage je n’aurais qu’une forte recommandation : NE SURTOUT PAS Y TOUCHER. Par défaut désactivée, la déduplication est un moyen permettant de ne pas dupliquer des données déjà existantes ailleurs dans le stockage et d’enregistrer simplement un pointeur vers un bloc unique. Problème : la table stockant tout cela est en RAM, il faut donc 3 à 5 Go de RAM par To de stockage, s’il n’y en a pas assez le système panique et une fois activée la déduplication ne peut plus être désactivée.

La prochaine étape va être de créer nos utilisateurs, leur donner de l’espace et créer les partages nécessaires pour accéder à nos données.

La suite ici : Tuto FreeNAS 9.3 : Utilisateurs, Datasets et Permissions


Vous avez aimé ? N'hésitez pas à partager :
Facebook Twitter Google+ Mail

23 réflexions sur « Tuto FreeNAS 9.3 : Création du pool »

  1. Au paragraphe « Penser son pool », j’aujouterais que la problematique du RAIDZ1, est un disque defaillant plus 1 erreur de lecture irrecuperable sur un des disques du pool restant (URE pour Uncoverable Error Rate). Avec les capacites actuelles des disque (>2To), la probabilte d’une URE est importante. Dans ce cas precis, la reconstruction du pool n’est pas possible. Le RAIDZ2, offre la redondance nécessaire pour pallier a la récupération d’une telle erreur, lors de la reconstruction du pool.
    Dans tous les cas, une sauvegarde s’impose effectivement, ensuite reste a chacun de déterminer ou placer le curseur de la « securite » des données.

  2. Bonjour,

    Quand vous dites “Penser son pool” cela implique t il qu’il ne peut être créé qu’un seul pool.
    Je tente en vain de créer plusieurs pool.
    D’abord un simple strip 500 Go avec 3 Dataset sur mon premier disque pour des espaces persos. Pas de soucis.
    L’interface m’autorise à créer un second pool en mirror 2 x 1To, l’opération est validé sans erreur mais mon pool n’apparait pas.

    Ce type de structure n’est pas interdite ?

    Merci d’avance.

    Cordialement, Fred.

    1. Bonjour,
      Bien sûr qu’il est possible d’avoir plusieurs pool. Le piège au moment de la création du second est de bien faire un autre pool et non d’agrandir un pool existant en lui ajoutant simplement un autre vdev. Ça ne devrait pas être différent de la création du premier : il ne faut pas lui donner le même nom et bien sur ne pas sélectionner de pool à étendre.

  3. Bonsoir Mickaël,

    Super ce tuto, clair, net et précis 😉

    J’avais déja consulté il y a quelques années le tuto pour freenas 8.3 qui m’avait bien aidé à configurer mon 1er freenas. Maintenant j ai voulu sauter le pas du système ZFS et quel surprise de trouver ce tuto pour la version 9.3 a peine quelques jours après sa sortie !

    Vraiment génial et merci pour ce boulot !

    Une petite question toutefois, peut-on réellement réimporter un disque en UFS (créé sous version freenas 8.3) sous freenas 9.3 ? J’ai tout essayé et à chaque fois il me propose d’effacer mon disque (ce qui évidemment n’est pas le but). Y a-t-il un moyen de contourner ça ou faut-il que je me refasse la copie sur un autre disque avant (2to quand même) ?

    Merci d’avance pour tes lumières 😉

    Jos

    1. Merci beaucoup, ça fait toujours plaisir à lire.
      Je t’avoue que je n’ai pas testé, mais normalement Volume -> Import Disk est fait pour ça (sans supprimer les données !). Maintenant je ne te cache pas que le support de l’UFS qui était déjà en voie de disparition devient vraiment accessoire dans cette 9.3. Si tu le peux passe en ZFS

  4. Hello tous le monde, et bonne année 2015.
    Au sujet du pool, je me pose une question. J’ai environ 3To à mettre sur mon Nas (films, photos et pourquoi pas, données personnelles). Je suis en attente de livraison de deux disque WD 3TO RED, en complément de mon premier (identique).
    J’avais comme idée de construire un pool RAIDZ de ces trois disques de 3To pour obtenir environ 6 To de stockage tout en apportant une certaine sécurité en cas de panne de l’un des disques.
    Mais, à la re-lecture de cette page et de ses commentaires, je me demande si c’est la bonne solution. Car vous expliquez que plus les disques sont gros, plus la chance de pouvoir reconstruire le pool après un changement de disque, est faible. J’ai peur de me faire l’illusion d’une sécurité qui ne sera pas réelle est vérité…
    Que me conseillez-vous pour mon cas ? Je me demande si la solution ne serai pas de commander un quatrième WD 3TO RED pour faire un miroir ? Mais dans ce cas, je me retrouve avec 4 disques, donc 4 causes de pannes…
    Votre avis est important. Merci par avance.
    Martin

    1. Salut ! Et oui, pas simple d’aborder ce problème n’est ce pas ? La solution des miroirs est très bonne sur le plan de la sécurité et l’évolution est plus simple car pour agrandir un pool, il suffit d’ajouter les disques 2 à 2. Mais c’est plus cher…
      Tout dépend du risque que tu veux faire prendre à tes données et n’oublie pas que pour les données précieuses, n’importe quel pool ultra-redondant ne remplacera jamais une vraie sauvegarde externe.
      Chez moi j’ai fait RAIDZ de 3x2To et toutes les données persos sont sauvegardées sur un disque 2To dans un autre NAS extérieur.

      1. Merci Mickaël,
        Donc, au final, j’ai fait :
        Un pool RAIDZ de 3x3To et un autre en MIRROR 2x1To.
        Le premier pour mes médias (type films) et le second pour le travail. Soit 5 HD en tout.
        Grâce à tes nombreuses explications précises, j’ai mon NAS qui tourne comme une horloge. HÔ combien merci. Tu as du passer du temps à tester et à écrire tout cela !

        J’ai installer Plex pour mes films et je bataille un peu pour installer Owncloud, mais le résultat est vraiment satisfaisant.

        Cependant, je continue mon système de sauvegarde sur HD 2 fois par an, stocké dans un coffre fort… Jamais assez prudent !
        Martin

        1. Bonjour Martin,
          Merci pour beaucoup pour tes commentaires. Tu as raison de continuer les sauvegardes car un RAID quel qu’il soit n’est pas une sauvegarde.
          Tu as bien fait de ne pas attendre de tuto Owncloud car ce n’est pas prévu 😉

  5. LOL j’ai reçu mes deux WD 3TO RED. Le premier ne démarre même pas (bruit anormaux) et le second, après un test de surface réalisé avec HDtune Pro présente des secteurs défectueux.
    Commandés chez RDC, mais vu l’emballage, je ne suis qu’à moitié étonné. Ils étaient juste glissés dans un petit carton, sans bulles ou papier de protection…
    Du coup, je dispose de plus de temps pour réfléchir à mon pool ;-))

  6. Bonjour

    J’aimerais savoir quel est la meilleur f¸acon pour être en sécurité?
    Combien de disc je doit installer et quel format?
    Est-ce que je doit les installer en miroir?
    Si un disc est défectueux s’agit-il seulement de le remplacer sans perde mes données?
    J’aimerais avoir un capacité d’environ 3T
    Dans votre tuto vous proposer 2 méthodes de Pool miroir et RaidZ lequel est préférable?

    Super Mickaël, pour votre Totu

    1. Salut Pascal,
      Il s’agit là principalement d’un choix personnel et dépendant de ton utilisation et ton souhait pour tes données. Regarde le commentaire juste au dessus et prend bien le temps de réfléchir à ce que tu veux faire.

  7. Bonjour Mickaël,

    J’aimerais d’abord te dire que ton tuto sur freenas 9.3 est vraiment boen fait. J’avais déjà essayé freenas par la passé mais la complexité de cet OS m’avait un peu rebuté à l’époque mais je vois que niveau ergonomie il y a eu des efforts de fournis par les développeurs et puis ton tuto aide beaucoup.

    J’aurais une petite question est-il possible de mettre 4 disques en raid 10 sur freenas 9.3 et si oui quel est la marche à suivre ? Parce que quand on installe freenas et qu’on accède à l’interface web pour la première fois il nous propose de créer un volume avec un certain niveau de raid et la le raid 10 est proposé mais ensuite dans le gestionnaire de volume je ne vois pas l’option raid 10.

  8. salut très bon blog,
    j’ai actuellement un stora de netgear que je veut remplacer j’aimerais récupérer le disque à l’interieur et le balancer dans mon serveur freenas que je viens de mettre en route est ce possible sans y perdre les données?

  9. Bonjour à tous, je rencontré un petit problème. Aucun de mes disques n’est détecté par freenas. Ils apparaissent pourtant dans mon bios.
    Si quelqu’un a une solution ?
    Merci d’avance

  10. Bonjour, lors de la création du pool je choisis de mettre mes deux disque dur, 320go et 296go et en stripe mais ça ne le crée pas il m’affiche periph destroyed et faut que je redémarre pour pouvoir revoir mes disques dur… aidez moi svp

  11. Bonsoir Mickaël,

    Je me permets de vous contacter, pour savoir si vous avez déjà rencontré l’erreur suivante : Disk offline failed, no replica.

    J’ai cette erreur suite à la tentative de mise en veille mes différents disques dur.

    J’ai cherché sur Internet mais je n’ai pas trouvé, et j’ai coupé tous les services transverses qui pourrais peut être interagir tels que CIFS, Minidlna etc…

    Merci par avance pour ton aide.

    PS : Super Tuto je l’ai suivi il y a 3 semaines et il m’a bien servi, il est clair et précis.

    Cordialement,
    Thomas

  12. Bonjours je suis debutante et je veux con figureer nfs sous freenas mais a chaque fois que je lance cette commande: mount -t nfs 10.154.108.113:/mnt/partage/nfs /home/NFS
    il ma ffiche ces erreurs :
    mount: wrong fs type, bad option, bad superblock on 10.154.108.113:/mnt/partage/nfs,
    missing codepage or helper program, or other error
    (for several filesystems (e.g. nfs, cifs) you might
    need a /sbin/mount. helper program)
    In some cases useful info is found in syslog – try
    dmesg | tail or so

    1. Bonjour, j’ai eu le même problème sous Linux. Il faut chercher un programme/package qui aide à monter les partages réseau (dit dans le message d’erreur: you might need a /sbin/mount. helper program) comme cifsutils pour Linux. Il doit exister l’équivalent pour les systèmes BSD.

  13. Bonsoir et tout d’abord merci pour ce tutoriel plus que complet ! Il m’a été d’une grande aide !
    J’aurais une petite question cependant, lors de la création de mon NAS deux erreurs critiques sont apparues, je cite :

    -CRITICAL: Oct. 11, 2016, 7:45 p.m. – Device: /dev/ada0, 48 Currently unreadable (pending) sectors
    -CRITICAL: Oct. 11, 2016, 7:45 p.m. – Device: /dev/ada0, 48 Offline uncorrectable sectors

    Or je viens d’acheter ce disque, certes d’occasion mais en très bon état (j’ai eu la preuve en crystal disk). Que puis-je faire pour rectifier le problème ?

    Merci d’avance !

  14. Bonsoir,

    Impossible pour moi de créer un pool. Lorsque je lance Volume Manager puis que je fais le choix du disque (pour mon essai j’ai un DD SATA de 250Go Samsung). FreeNAS voit bien le volume ada1, je n’ai que « stripe » comme option, je clique sur add volume, une progress bar apparait / disparait et la fenêtre se ferme mais pas de volume visible dans storage/volume… Un coup de main ? Merci.

Répondre à Mathieu Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *