J'extruit un serveur Solaris 10 U8 avec un pool de stockage supplémentaire en plus de la racine ROCOOL.
Quel est le moyen le plus efficace/simple/fiable de déplacer un ou plusieurs systèmes de fichiers ZFS de RPOOL à ce nouveau pool de stockage?
Peut-il être fait en ligne ou devrais-je fermer les services en utilisant d'abord ces pools?
La question sur les services invalidants dépend essentiellement des services eux-mêmes:
Dans tous les cas, l'envoi d'un système de fichiers ZFS peut prendre beaucoup de temps. Il est possible de minimiser l'indisponibilité des services en les gardant en ligne la plupart du temps de cette façon:
envoyez ce second instantané de manière incrémentielle, ce qui sera beaucoup plus rapide que le transfert précédent. par exemple.:
zFS Envoyer -i RPOOL/FileSystem @ Snapshot RPOOL/FileSystem @ Snapshot2 | ZFS RECEVOIR -F DestinationPool/Système de fichiers
une fois terminé, déplacez le point de montage du système de fichiers de l'ancien jeu de données vers le nouveau. par exemple.:
zfs set mountpoint=/application/directory.old rpool/filesystem
zFS Set MountPoint =/Application/Directory Destination/Système de fichiers
Vous devez vous assurer qu'aucun processus n'est lié à /application/filesystem
(E.G.: Accéder aux fichiers ou l'avoir comme répertoire actuel) pour atteindre cela.
Je répète une grande partie de ce que Jlliagre a dit, mais avec des ajouts pour les systèmes de fichiers descendants. (Surtout donc j'ai une référence quand j'oublie.)
Si vous avez des systèmes de fichiers sous-fichiers, vous voudrez utiliser le -r
Drapeau sur la commande ZFS Snapshot, et le -r
ou -R
Drapeau sur le zfs send
commande. La majuscule -R
Déplace tout Propriétés, instantanés et clones.
Pour déplacer une piscine entière:
zfs snapshot -r sourcepool@moving
zfs send -R sourcepool@moving | zfs receive -F destpool
ensuite, pour synchroniser les modifications pour une période de migration plus courte, arrêtez Samba, NFS
zfs snapshot -r sourcepool@moving2
zfs send -Ri sourcepool@moving sourcepool@moving2 | zfs receive -F destpool
Si vous créez plusieurs instantanés intermédiaires pour la migration, lisez la page Homme de la zfs send -I
changer.
Vous trouverez également des avantages dans l'utilisation d'un outil comme "Mbuffer" dans le pipeline; Apparemment, les performances d'envoi/RECV ZFS améliorent considérablement si les deux extrémités peuvent principalement diffuser des données de manière continue et sans mbuffer (ou quelque chose de similaire), vous obtenez un effet de ping-pong où l'on bloque continuellement de l'autre.