Come posso estendere un volume EBS con partizioni LVM?
Voglio estendere il mio volume Amazon Elastic Block Store (Amazon EBS) con partizioni LVM.
Breve descrizione
Esistono due opzioni per estendere i volumi logici:
- aumentare le dimensioni del volume EBS esistente.
- Aggiungere ulteriori volumi EBS al tuo gruppo di volumi ed estendere il VG-LV.
Risoluzione
Opzione 1: aumentare le dimensioni del volume EBS esistente
Nota: Le modifiche alle dimensioni dei volumi esistenti di solito hanno effetto entro pochi secondi dopo che il volume è entrato nello stato di ottimizzazione. Le prestazioni del volume sono influenzate durante lo stato di ottimizzazione, ma non scendono al di sotto delle specifiche di configurazione di origine. A seconda del tipo di volume, le modifiche alle prestazioni potrebbero richiedere da alcuni minuti a qualche ora. Per ulteriori informazioni, consulta Monitoraggio dell'avanzamento delle modifiche del volume.
1. Modifica le dimensioni del volume EBS esistente.
2. Esegui il seguente comando per installare l'utilità growpart :
$ sudo yum install cloud-utils-growpart
Nota: Usa il seguente comando per installare l'utilità growpart su sistemi basati su Debian o Ubuntu:
$ sudo apt install -y cloud-guest-utils
3. Esegui il comando growpart per estendere la partizione.
$ sudo growpart /dev/xvdh 1 CHANGED: disk=/dev/xvdh partition=1: start=2048 old: size=20971519,end=16777182 new: size=41940958,end=41943006
4. Esegui il comando pvresize per ridimensionare il PV. Nell'esempio seguente, la partizione /dev/xvdh1 è estesa:
$ sudo pvresize /dev/xvdh1 Physical volume "/dev/xvdh1" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
Usa pvs o pvdisplay per visualizzare i dettagli del volume fisico:
$ sudo pvs PV VG Fmt Attr PSize PFree /dev/xvdh1 examplegroup1 lvm2 a-- <20.00g <13.00g
Usa vgs o vgdisplay per visualizzare i dettagli del gruppo di volumi:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 1 1 0 wz--n- <20.00g <13.00g
5. Esegui il comando lvextend per estendere il volume logico:
$ sudo lvextend -L 19G /dev/examplegroup1/lvexample1
Nota: Nell'esempio precedente, 19G è la nuova dimensione aumentata del volume logico (LV). 19G non è la dimensione con cui il LV deve essere aumentato.
Usa il comando lvs o lvdisplay per visualizzare i dettagli del volume logico:
$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 19.00g
6. Esegui il seguente comando per estendere il file system:
I file system Ext2, Ext3 e Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
File systemXFS:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
Opzione 2: Aggiungi ulteriori volumi EBS al tuo gruppo di volumi ed estendi il VG-LV
1. Crea un altro volume da 10 GB e quindi collega il volume all'istanza. Crea una partizione sul dispositivo /dev/xvdi seguendo il passaggio 3 di Creare volumi fisici sulla partizione del tuo volume EBS. Quindi esegui il comando pvcreate. Nell'esempio seguente, il nome del dispositivo a blocchi del volume è /dev/xvdi1.
$ sudo pvcreate /dev/xvdi1 Physical volume "/dev/xvdi1" successfully created
2. Usa il comando vgextend per estendere il gruppo di volumi e aggiungere il nuovo volume. L'esempio seguente estende il gruppo di volumi examplegroup1 per includere il volume /dev/xvdi1:
$ sudo vgextend examplegroup1 /dev/xvdi1 Volume group "examplegroup2" successfully extended
Per confermare l'estensione, esegui il comando vgs o vgdisplay. L'esempio seguente mostra che ora ci sono due PV nel gruppo di volumi examplegroup1:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 2 1 0 wz--n- 29.99g 20.99g
3. Esegui il comando lvextend per estendere il volume logico:
$ sudo lvextend -L 29G /dev/examplegroup1/lvexample1
Nota: Nell'esempio precedente, 29G è la nuova dimensione aumentata del volume logico (LV). 29G non è la dimensione con cui il LV deve essere aumentato.
4. Ridimensiona il file system:
I file system Ext2, Ext3 e Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
File systemXFS:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
Estendere un volume a strisce
Lo striping è una tecnica per distribuire i dati su più dischi. Potresti ricevere un messaggio simile al seguente quando estendi un volume logico:
$ pvcreate /dev/xvdd Physical volume "/dev/xvdd" successfully created. $ vgextend vg01 /dev/xvdd Volume group "vg01" successfully extended $ vgs VG #PV #LV #SN Attr VSize VFree vg01 3 1 0 wz--n- <23.99g <13.99g $ lvextend /dev/vg01/lv01 -L +10G Using stripesize of last segment 128.00 KiB Insufficient suitable allocatable extents for logical volume lv01: 1026 more required
L'errore precedente o errori simili si verificano quando si estende un volume logico "a strisce" senza aggiungere un numero sufficiente di dispositivi per lo stripping dei dati.
Per evitare questi errori durante l'estensione di un volume a strisce, completa i seguenti passaggi:
1. Esegui il seguente comando per identificare il numero di dispositivi su cui LV trasmette i dati.
$ lvs -o+lv_layout,stripes LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Layout #Str lv01 vg01 -wi-a----- 10.00g striped 2
2. La colonna #Str, o a strisce, rappresenta il numero di dispositivi su cui vengono suddivisi i dati. Nell'esempio precedente, i dati vengono distribuiti su 2 dispositivi. Quindi, è necessario aggiungere almeno 2 dispositivi (o dispositivi in multipli di 2) al vg per estendere il LV. Dopo aver aggiunto un dispositivo (nei passaggi precedenti), aggiungi il secondo dispositivo e tenti di eseguire nuovamente l'estensione:
$ pvcreate /dev/xvde Physical volume "/dev/xvde" successfully created. $ vgextend vg01 /dev/xvde Volume group "vg01" successfully extended $ vgs VG #PV #LV #SN Attr VSize VFree vg01 4 1 0 wz--n- 31.98g 21.98g $ lvextend /dev/vg01/lv01 -L +10G Using stripesize of last segment 128.00 KiB Size of logical volume vg01/lv01 changed from 10.00 GiB (2560 extents) to 20.00 GiB (5120 extents). Logical volume vg01/lv01 successfully resized. $ lvs -o+lv_layout,stripes LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Layout #Str lv01 vg01 -wi-a----- 20.00g striped 2 lv01 vg01 -wi-a----- 20.00g striped 2
L'esempio di output precedente mostra che il comando lvextend è stato completato correttamente quando è stato aggiunto il secondo dispositivo.
3. Esegui il seguente comando per ridimensionare il file system:
I file system Ext2, Ext3 e Ext4:
$ sudo resize2fs /dev/vg01/lv01
File systemXFS:
$ sudo xfs_growfs /dev/vg01/lv01
Contenuto pertinente
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata un anno fa