zfs et évolutivité future

8

Je veux construire un serveur en utilisant freebsd 9 et zfs. J'ai du vieux matériel (Intel quad core avec 8 Go de RAM) qui traîne, et je suis prêt à acheter deux ou trois disques de 1 To. J'ai également un serveur RAID dlink avec deux disques de 1 To déjà dedans que j'arrêterais probablement d'utiliser, donc ces 2 disques durs seraient disponibles pour utilisation dans le serveur zfs une fois que j'aurais déplacé les données dessus (environ 300 Mo actuellement dans le raid 1) sur le nouveau serveur.

Cela me donne donc 2 ou 3 disques au début, avec la possibilité de passer à 4 ou 5 disques une fois que j'ai correctement configuré le serveur zfs et copié les données.

Ma question est de savoir comment configurer au mieux le pool zfs afin d'avoir une redondance et un espace de stockage maximum, avec la possibilité de passer à 2 ou 3 disques ou plus à l'avenir lorsqu'ils seront disponibles. Je ne me soucie donc pas beaucoup de la vitesse, je suppose que mon Ethernet (même à 1 Go / s) sera de toute façon le facteur déterminant de la vitesse du système ...?

Ma pensée actuelle est d'acheter 2 nouveaux disques, de les configurer en utilisant le mode de répartition. Une fois que j'ai copié toutes les données de mon dlink nas, je supprimerais 1 de ces disques, l'ajouterais au pool en le faisant un miroir d'un des nouveaux disques. Une fois la baie reconstruite, je déplacerais ensuite l'autre disque dans le pool afin qu'il reflète le deuxième nouveau disque ... après tout cela, je devrais avoir l'équivalent approximatif de RAID 10, "miroirs rayés".

Est-ce possible ou existe-t-il une meilleure façon de procéder?

Encore une fois, ma priorité est la redondance maximale, la maintenance (échange de vieux disques avec des disques plus récents / plus grands et augmentation de mon espace total de pool), l'espace de stockage disponible et la vitesse; dans cet ordre.

user85116
la source

Réponses:

6

Pour pouvoir augmenter l'espace de stockage en ne remplaçant que quelques-uns des disques, vous devez utiliser des vdev en miroir, agrégés par bandes (ce qui équivaut en fait à RAID10).

Dans votre cas, avec 4 disques, cela signifierait travailler sur quelque chose comme ceci:

    zpool
      mirror
        disk1
        disk2
      mirror
        disk3
        disk4

Cela vous fournirait 2 To de stockage (étant donné que tous les disques sont de 1 To) et une bonne redondance (0% d'échec de la baie après 1 crash de disque, seulement 33% de l'échec de la baie avec 2 crashs de disque simultanés).

Maintenant, pour y arriver, j'achèterais ces 2 nouveaux disques de 1 To et les mettrais dans le pool:

zpool create zpool mirror disk1 disk2

Déplacez ensuite votre contenu du DLINK vers le pool nouvellement créé.

Une fois cela fait, vous pouvez nettoyer les disques DLINK et les ajouter au pool, pour augmenter le stockage:

zpool add zpool mirror disk3 disk4

Si vous souhaitez par la suite augmenter encore plus le stockage, vous pouvez le faire en ajoutant plus de vdev (de préférence également des miroirs) OU en remplaçant seulement 2 des 4 disques. Le remplacement se déroule comme suit:

zpool offline zpool disk3
# remove physical disk3 at this point
# insert new, bigger disk in place of disk3
zpool online zpool disk3
# wait for resilver
# after resilver, do the same with disk4
# your vdev is now bigger, increasing the size of the pool

Maintenant, regardons l'autre option. Si vous aviez fait 1 raidz vdev comme ceci:

zpool
  raidz
    disk1
    disk2
    disk3
    disk4

Vous auriez 3 To de stockage, mais, pour augmenter ce stockage en remplaçant simplement les disques (et non en ajoutant), vous devrez remplacer TOUS les 4 disques (un par un bien sûr) pour augmenter la taille du pool! De plus, cette configuration a 100% d'échec de la baie si 2 disques tombent en panne simultanément.

La configuration raidz serait également plus lente que la configuration des miroirs rayés. Étant donné que raidz est plus intensif en calcul, tandis que les rayures + miroirs améliorent en fait les performances de lecture et d'écriture. Avec les disques durs `` normaux '' (non SSD), les miroirs rayés rempliront probablement votre connexion gigabit pour les lectures et écritures séquentielles, car ZFS peut combiner la bande passante des disques (rappelez-vous que 1 Go / s n'est que ~ 125 mégaoctets / s, un standard `` normal '') Le disque dur vous donnera environ 90 mégaoctets / s). Je ne pense pas que la configuration raidz ci-dessus pourra le faire sur du matériel grand public.

Pour conclure, le score pour les miroirs rayés / RAID 10 avec votre quantité de disques est:

+ max redundancy
+ maintenance
- available storage space
+ speed

Le score de raidz est:

- max redundancy
- maintenance
+ available storage space
- speed

Je dirais que les miroirs rayés gagnent :)

Un dernier conseil: lisez certainement plus sur le comment et le pourquoi avant de commencer! Peut-être même simuler toute la procédure dans une machine virtuelle. Je pense en particulier à l'étape où vous ajoutez le deuxième miroir vdev! Si vous le faites mal, vous pourriez obtenir une configuration différente que vous espériez et ZFS est très impitoyable dans ces cas, car il ne vous permet pas de supprimer des vdev du pool ou des disques de raidz vdevs !! (la suppression de disques sous forme de miroir vdevs est cependant autorisée)

Aussi, soyez à l'épreuve du temps et étiquetez et alignez vos disques, afin de ne pas avoir de problèmes avec les lecteurs Advanced Format! Pour plus d'informations sur les subtilités des lecteurs ZFS et 4K, je vous suggère de lire ce fil sur le forum FreeBSD .

hopla
la source
3

Chaque groupe de disques que vous ajoutez en même temps a sa propre stratégie de redondance, indépendamment de l'ajout ou de la création d'un nouveau pool. 2 disques = miroir, 3 vous pouvez utiliser RAIDZ (ou faire preuve de créativité, je ne le recommande pas). Les performances seront probablement plus lentes sur l'Ethernet 1 Go avec des disques de ce type. De plus, l'échange de disques pour des disques plus grands ultérieurement est un peu compliqué, bien que tout à fait possible.

Je recommande fortement de lire le guide d'administration ZFS du début à la fin avant de commencer.

Chris S
la source