freebsd:zfs
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
freebsd:zfs [2012/07/12 15:35] – sheltem | freebsd:zfs [2018/04/25 08:44] (Version actuelle) – sheltem | ||
---|---|---|---|
Ligne 23: | Ligne 23: | ||
zpool create mon_pool raidz ada0 ada1 ada3 | zpool create mon_pool raidz ada0 ada1 ada3 | ||
+ | | ||
+ | ==== Propriétés ==== | ||
+ | | ||
+ | Voir les propriétés d'un pool : | ||
+ | |||
+ | zfs get all storage/ | ||
+ | |||
+ | Voir le status d'un propriété (compression dans l' | ||
+ | |||
+ | zfs get compression storage/ | ||
+ | | ||
+ | Changer une propriété (atime dans l' | ||
+ | |||
+ | zfs set atime=on storage/ | ||
| | ||
===== Réparer un pool dégradé ===== | ===== Réparer un pool dégradé ===== | ||
Ligne 53: | Ligne 67: | ||
</ | </ | ||
- | C'est donc " | + | C'est donc " |
On éteint la machine, on remplace le disque défaillant, | On éteint la machine, on remplace le disque défaillant, | ||
Ligne 94: | Ligne 108: | ||
===== Redimensionner un pool ===== | ===== Redimensionner un pool ===== | ||
- | Imaginons un pool de 3 disques de 250Go (ada1, ada2, ada3), que l'on souhaite remplacer par 3 disques de 1To, si le pool ne contient pas le système, il paraît judicieux de tous transférer sur un autre support, puis refaire un pool avec les 3 nouveaux disques. | + | Imaginons un pool de 3 disques de 250Go (ada1, ada2, ada3), que l'on souhaite remplacer par 3 disques de 1To. |
+ | |||
+ | Si le pool ne contient pas le système, il paraît judicieux de tous transférer sur un autre support, puis refaire un pool avec les 3 nouveaux disques, ou si l'on a suffisamment de contrôleurs, | ||
Si le système est dessus et/ou le pool est plein et qu'on a pas de moyen de transférer les données provisoirement ailleurs, il y a une solution, qui peut être longue mais qui fonctionne. | Si le système est dessus et/ou le pool est plein et qu'on a pas de moyen de transférer les données provisoirement ailleurs, il y a une solution, qui peut être longue mais qui fonctionne. | ||
- | On éteint la machine et on remplace un 250GO par un modèle d'un 1To, et on déclare le remplacement comme indiqué dans le chapitre précédent. | + | On éteint la machine et on remplace un 250Go par un modèle d'un 1To, et on déclare le remplacement comme indiqué dans le chapitre précédent. |
- | Une fois que le status confirme que le pool est " | + | Une fois que le status confirme que le pool est " |
- | Ensuite | + | Ensuite |
zpool list | zpool list | ||
Ligne 111: | Ligne 127: | ||
zpool set autoexpand=on mon_pool | zpool set autoexpand=on mon_pool | ||
- | + | ||
- | Ce qui active la possibilité d'auto redimensionnement du pool, il faut ensuite | + | Ce qui active la possibilité d'auto redimensionnement du pool, il faut ensuite |
zpool offline mon_pool ada1 | zpool offline mon_pool ada1 | ||
Ligne 119: | Ligne 135: | ||
zpool online -e mon_pool ada1 | zpool online -e mon_pool ada1 | ||
+ | |||
+ | L' | ||
Et voila, un : | Et voila, un : | ||
Ligne 124: | Ligne 142: | ||
zpool list | zpool list | ||
- | devrait vous montrer cette fois environ 3To. | + | devrait vous montrer cette fois environ 3To (~ 1,8To utilisable en raidz). |
on peut ensuite désactivé l' | on peut ensuite désactivé l' | ||
Ligne 130: | Ligne 148: | ||
zpool set autoexpand=off mon_pool | zpool set autoexpand=off mon_pool | ||
| | ||
+ | ===== Tuning ===== | ||
+ | |||
+ | ==== Alignement des blocs ==== | ||
+ | |||
+ | Pour résumer, sous freebsd, les disques sont détecté comme ayant des blocs de 512 octets, et la plupart des outils de partitionnements les voient comme ça, sauf que tous les disques durs d' | ||
+ | |||
+ | Pour vérifier : | ||
+ | |||
+ | zdb -C storage | grep ashift | ||
+ | |||
+ | | ||
+ | |||
+ | La valeur " | ||
+ | |||
+ | L' | ||
+ | |||
+ | **Attention, | ||
+ | |||
+ | On crée les " | ||
+ | |||
+ | gnop create -S 4096 /dev/ada1 | ||
+ | gnop create -S 4096 /dev/ada2 | ||
+ | gnop create -S 4096 /dev/ada3 | ||
+ | |||
+ | On crée notre pool avec : | ||
+ | |||
+ | zpool create storage raidz / | ||
+ | | ||
+ | On vérifie : | ||
+ | |||
+ | < | ||
+ | zpool status | ||
+ | |||
+ | pool: storage | ||
+ | state: ONLINE | ||
+ | scan: none requested | ||
+ | config: | ||
+ | |||
+ | NAME | ||
+ | storage | ||
+ | raidz1-0 | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | </ | ||
+ | On exporte le pool (sauve les paramètres et stop les lecture/ | ||
+ | |||
+ | zpool export storage | ||
+ | | ||
+ | On détruit les " | ||
+ | | ||
+ | gnop destroy / | ||
+ | | ||
+ | On importe le pool : | ||
+ | | ||
+ | zpool import storage | ||
+ | |||
+ | On vérifie : | ||
+ | |||
+ | zpool status | ||
+ | | ||
+ | pool: storage | ||
+ | | ||
+ | scan: none requested | ||
+ | | ||
+ | |||
+ | NAME STATE READ WRITE CKSUM | ||
+ | storage | ||
+ | raidz1-0 | ||
+ | ada1 ONLINE | ||
+ | ada2 ONLINE | ||
+ | ada3 ONLINE | ||
+ | |||
+ | Le pool en mode raidz est bien la avec les " | ||
+ | | ||
+ | On vérifie également que zfs considère bien nos disques comme ayant des blocs de 4Ko : | ||
+ | | ||
+ | zdb -C storage | grep ashift | ||
+ | | ||
+ | Ce qui doit donner : | ||
+ | |||
+ | ashift: 12 | ||
+ | |||
+ | et non plus " | ||
+ | |||
+ | ==== Ajuster les propriétés ==== | ||
+ | |||
+ | La déduplication est une propriété qui fera gagné un espace non négligeable sur certain système de fichiers, mais sur un NAS personnel, elle sera la plupart du temps inutile, mais surtout trés gourmande en ressources. | ||
+ | |||
+ | Pour la désactiver : | ||
+ | |||
+ | zfs set dedup=off | ||
+ | |||
+ | Une autre propriété rarement utile, les "acces time", permettant de mettre a jour les dates d' | ||
+ | |||
+ | Pour les désactiver : | ||
+ | |||
+ | zfs set atime=off storage | ||
+ | |||
+ | Et la compression, | ||
+ | |||
+ | Pour la désactiver : | ||
+ | |||
+ | zfs set compression=off storage | ||
freebsd/zfs.1342107327.txt.gz · Dernière modification : 2012/07/12 15:35 de sheltem