Création basique d’un pool ZFS
Création d’un pool tank
, selon différentes configurations :
(les noms des disques ont été changés pour faciliter la lecture des exemples)
Miroir (similaire au RAID1, ≥ 2 disques, 1:1 redondance)
zpool create tank mirror disk0 disk1
zpool create tank raidz disk0 disk1 disk2
zpool create tank raidz2 disk0 disk1 disk2 disk3
stripe (par défault, similaire au RAID0, pas de redondance ni de parité)
zpool create tank disk0 disk1
single disk stripe pool
zpool create tank disk0
Résumons :
Niveau de RAID matériel |
équivalent OpenZFS |
commande |
---|---|---|
RAID0 |
stripe (default) |
zpool create tank disk0 disk1 |
RAID1 |
mirror |
zpool create tank mirror disk0 disk1 |
RAID10 |
mirror + mirror |
zpool create tank mirror disk0 disk1 mirror disk2 disk3 |
RAID5 |
raidz (ou raidz1) |
zpool create tank raidz disk0 disk1 disk2 |
RAID6 |
raidz2 |
zpool create tank raidz2 disk0 disk1 disk2 disk3 |
sans équivalent |
raidz3 |
zpool create tank raidz3 disk0 disk1 disk2 disk3 disk4 |
Création avancée d’un pool ZFS
Grouper les pools
Si vous souhaitez construire un pool avec un grand nombre de disques, il est conseillé de les configurer en plusieurs groupes. Cela permet une conception de pool plus flexible et établir un compromis entre espace, parité et efficacité.
zpool create tank \
raidz disk0 disk1 disk2 \
raidz disk3 disk4 disk5
À faire
taille des blocs, options pour databases
Options avancées pool et volume ZFS
Désactiver la déduplication :
zfs set dedup=off tank
Activer la compression :
zfs set compression=lz4 tank
Désactiver l’access-time et la synchronisation immédiate (meilleures performances) :
zfs set atime=off tank
zfs set sync=disabled tank
Stocker les attributs étendus dans les inodes afin d’obtenir plus d’IO :
zfs set dnodesize=auto tank
zfs set xattr=sa tank
Ajouter un cache (L2ARC)
ZFS peut utiliser des SSD comme cache de second niveau (L2ARC) après la RAM (ARC) afin d’améliorer les performances globales. Les disques de cache étant lus et écrits très fréquemment, il faut privilégier des dispositifs SSD plus durables (SLC/MLC plutôt que TLC/QLC), voir NVMe. Voir Les systèmes de cache.
zpool add tank cache nvme-0-scsi6
ZFS peut utiliser la NVRAM/Optane/SSD comme périphérique SLOG, c’est un cache en écriture, mais attention : Les disques SLOG utilisés pour accélérer ces écritures doivent être configuré en mode miroir. Voir Les systèmes de cache.
Voir aussi https://www.servethehome.com/what-is-the-zfs-zil-slog-and-what-makes-a-good-one/
zpool add tank log mirror nvme-0-scsi7 nvme-0-scsi8
Ajout d’un disque de spare
zpool add tank spare scsi-0-scsi9