web-dev-qa-db-fra.com

Comment puis-je ajouter un nouveau disque à ZFS et la rendre disponible des points de vue existants si la piscine actuelle est la piscine racine?

Mon serveur S11 a la configuration suivante:

le disque n ° 1 est utilisé pour RPOOL, qui est le piscine racine que je souhaite ajouter le disque n ° 2 pour augmenter la taille disponible pour les dossiers déjà montés, mais je ne peux pas ajouter le disque à la RPOOL existante, car c'est le pool root.

Existe-t-il un moyen de rendre le nouveau disque disponible pour le dossier "/"? Est-ce que ma seule option pour créer un nouveau zpool et le montez sous un nouveau dossier?

Merci.

Rameau


 root@raamee:~# zpool status
  pool: rpool
 state: ONLINE
 status: The pool is formatted using an older on-disk format. The pool can
         still be used, but some features are unavailable.
 action: Upgrade the pool using 'zpool upgrade'. Once this is done, the
         pool will no longer be accessible on older software versions.
  scan: none requested
 config:

         NAME        STATE     READ WRITE CKSUM
         rpool       ONLINE       0     0     0
           c4t0d0s0  ONLINE       0     0     0

root@raamee:~# zfs list
NAME                       USED  AVAIL  REFER  MOUNTPOINT
rpool                      130G  4.18G  4.59M  /rpool
rpool/ROOT                 101G  4.18G    31K  legacy
rpool/ROOT/S11-GA          152M  4.18G  7.33G  /
rpool/ROOT/S11-GA/var     17.4M  4.18G  5.20G  /var
rpool/VARSHARE             180K  4.18G   180K  /var/share
rpool/dump                8.25G  4.43G  8.00G  -
rpool/guests                31K  4.18G    31K  /guests
rpool/scratch             2.52M  4.18G  2.52M  /scratch
rpool/swap                20.6G  4.81G  20.0G  -

root@raamee:~# format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
       0. c4t0d0 <FUJITSU-MBB2147RCSUN146G-0505 cyl 17845 alt 2 hd 255 sec 63>
          /pci@7b,0/pci1022,7458@11/pci1000,3060@2/sd@0,0
          /dev/chassis/SYS/HD0/disk
       1. c4t1d0 <FUJITSU-MBB2147RCSUN146G-0505-136.73GB>
          /pci@7b,0/pci1022,7458@11/pci1000,3060@2/sd@1,0
          /dev/chassis/SYS/HD1/disk
4
RaamEE

Fixez le deuxième disque sous forme de miroir de la première, attendez Resilver, retirez le premier disque, définissez les propriétés sur Autoexpand. N'oubliez pas de configurer le code de démarrage ou quoi que ce soit comme ça. Exemple:

zpool attach rpool olddisk newdisk
...wait, check using zpool status rpool
zpool detach rpool olddisk
zpool set autoexpand=on rpool
6
Chris S

Oui, je crois que votre seule option est de créer une nouvelle piscine à l'aide du deuxième disque. La seule chose que vous puissiez faire avec la rpool est miroir le disque - qui ne fera pas plus d'espace disponible. Le RPOOL ne supporte pas la bande, en raison des difficultés qu'il poserait avec le démarrage.

zpool create mypool c4t1d0
1
chrskly

Vous ne pouvez pas "développer" la taille de la RPOOL en ajoutant un disque à un autre (RAID 0), comme mentionné précédemment, comme indiqué précédemment, comme indiqué ci-dessous, vous pouvez attacher un disque plus grand sous forme de miroir, une fois que les données sont synchronisées ( Resliver complet), détachez le disque plus petit. (Oups maintenant je vois aussi la réponse de Chris)

Voici un processus pour refléter le disque racine ... http://constantin.glez.de/blog/2011/03/how-set-zfs-root-pool-mirror-oracle-solaris-11- Express

Suivez cela sauf que là où ils font:

prtvtoc /dev/rdsk/c7t0d0s0 | fmthard -s - /dev/rdsk/c7t1d0s0

... Vous voudrez exécuter un format et faire la taille de la tranche 0 plus grande, probablement tout le disque

# format /dev/rdsk/c4t1d0s0

(Je ne vais pas entrer en détail sur la commande de format interactif)

# zpool attach rpool c4t0d0s0 c4t1d0s0

# zpool status rpool

[~ # ~] attend [~ # ~ ~] jusqu'à ce qu'il indique "Resilver Terminé" (Continuez à vérifier zpool status rpool)

Assurez-vous que vous pouvez démarrer sur le deuxième disque

Ensuite, détachez le miroir RPOOL plus petit et redémarrez, assurez-vous de pouvoir démarrer à nouveau.

# zpool detach rpool c4t0d0s0

PROFIT!?

Référence: http://docs.oracle.com/cd/e19963-01/html/821-1448/gjtuk.html#gjtui


Réponse précédente:

Après avoir créé la piscine à l'aide de la commande, il a spécifié:

zpool create mypool c4t1d0

Créer un système de fichiers, par exemple:

zfs create mypool/home

... Copiez les données sur le nouveau disque ... (Re) Déplacez les données du disque RPOOL, puis définissez le point de vue sur un emplacement approprié, tel que:

zfs set mountpoint=/export/home mypool/home

C'est bien sûr qu'en supposant que/exportation/maison est l'endroit où tout l'espace est utilisé. Vous devrez peut-être le faire en mode "utilisateur unique" ou créer un utilisateur avec un répertoire personnel qui n'est pas dans /export/home Pour compléter cela.

Sur une note latérale, votre sortie de liste ZFS semble funky, comme il manque quelque chose. rpool/ROOT montre 101 Go d'occasion, mais les systèmes de fichiers sous elle ne font que montrer environ 12.5 Go Ref, et bien moins utilisés. Avez-vous par hasard avoir d'autres environnements de démarrage sous RPOOL/racine que vous avez "coupé" de votre liste de liste ZFS? Pourriez-vous peut-être détruire ces kootenv ou au moins les systèmes de fichiers ZFS pour retrouver l'espace utilisé dans RPOOL/root?

~ Tommy

1
TommyTheKid