GNU/Linux >> Linux Esercitazione >  >> Linux

Perché il mio pool ZFS non si espande utilizzando ZFS su Linux?

Soluzione 1:

Sto eseguendo ZFS su Ubuntu 16.04 e dopo molte prove ed errori, questo è ciò che ha funzionato per espandere le dimensioni del disco e del pool senza riavviare. Il mio sistema è ospitato nel cloud presso Profitbricks e utilizza unità libvirt (non SCSI).

Ottieni i dettagli del pool e del dispositivo:

# zpool status -v
   ...
    NAME        STATE     READ WRITE CKSUM
    pool        ONLINE       0     0     0
      vdb       ONLINE       0     0     0

# zpool list
NAME   SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
pool  39.8G  27.1G  12.7G         -    49%    68%  1.00x  ONLINE  -

Attiva espansione automatica:

# zpool set autoexpand=on pool

Ora accedi al pannello di controllo di Profitbricks e aumenta la dimensione del disco da 40 GB a 50 GB.

Notifica al sistema la modifica della dimensione del disco ed espandi il pool:

# partprobe
Warning: Not all of the space available to /dev/vdb appears to be used,
you can fix the GPT to use all of the space (an extra 10485760 blocks) or 
continue with the current setting?

# zpool online -e pool vdb

# partprobe

# zpool list
NAME   SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
pool  49.8G  27.1G  21.7G         -    40%    55%  1.00x  ONLINE  -

Non sono sicuro del perché, ma a volte è necessario eseguire partprobe e/o zpool online -e pool vdb due volte per rendere effettive le modifiche.

Soluzione 2:

Ho letto sui forum di freebsd un post che suggeriva di usare zpool online -e <pool> <vdev> (senza dover prima mettere offline il vdev)

Questa alla fine era la soluzione, ma era necessario prima disabilitare l'espansione automatica ZFS :

[[email protected] ~]# zpool list
NAME          SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
dfbackup      214G   207G  7.49G    96%  1.00x  ONLINE  -
[[email protected] ~]# zpool get autoexpand
NAME         PROPERTY    VALUE   SOURCE
dfbackup     autoexpand  on      local
[[email protected] ~]# zpool set autoexpand=off dfbackup
[[email protected] ~]# zpool online -e dfbackup /dev/disk/by-id/virtio-sbs-XLPH83
[[email protected] ~]# zpool list
NAME          SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
dfbackup      249G   207G  42.5G    82%  1.00x  ONLINE  -

Usando zpool set autoexpand=off seguito da zpool online -e era necessario per espandere zpool per me, usando ZFS su Linux (nel kernel, non usando FUSE)


Linux
  1. Perché Linux è fondamentale per l'edge computing

  2. Esegui il debug di Linux usando ProcDump

  3. Perché mi attengo a xterm

  4. Perché GNU/Linux SUS v3+ non è compatibile?

  5. Perché i nomi utente Linux non possono iniziare con numeri?

5 motivi per cui dovresti usare OpenSUSE

I 10 motivi principali per utilizzare Linux

Perché i nerd usano Linux

Installa MongoDB usando Vagrant in Linux

Utilizzo del comando Watch in Linux

Motivi per cui consiglio di utilizzare Debian Linux