¿Cómo puedo ampliar un volumen de EBS con particiones LVM?
Quiero ampliar mi volumen de Amazon Elastic Block Store (Amazon EBS) que tiene particiones LVM.
Breve descripción
Hay dos opciones para ampliar los volúmenes lógicos:
- Aumente el tamaño del volumen de EBS existente.
- Añada volúmenes de EBS adicionales a su grupo de volúmenes y amplíe el VG-LV.
Resolución
Opción 1: Aumentar el tamaño del volumen de EBS existente
Nota: Los cambios de tamaño de los volúmenes existentes suelen tener efecto en cuestión de segundos después de que el volumen entre en el estado de optimización. El rendimiento del volumen se ve afectado mientras se encuentra en el estado de optimización, pero no cae por debajo de la especificación de configuración de origen. En función de su tipo de volumen, los cambios de rendimiento pueden tardar desde unos minutos hasta unas horas. Para obtener más información, consulte Supervisar el progreso de las modificaciones de volumen.
1.Modifique el tamaño del volumen de EBS existente.
2.Ejecute el siguiente comando para instalar el paquete de la utilidad growpart:
$ sudo yum install cloud-utils-growpart
Nota: Utilice el siguiente comando para instalar la utilidad growpart en sistemas basados en Debian o Ubuntu:
$ sudo apt install -y cloud-guest-utils
3.Ejecute el comando growpart para ampliar la partición.
$ sudo growpart /dev/xvdh 1 CHANGED: disk=/dev/xvdh partition=1: start=2048 old: size=20971519,end=16777182 new: size=41940958,end=41943006
4.Ejecute el comando pvresize para cambiar el tamaño del PV. En el siguiente ejemplo, se amplía la partición**/dev/xvdh1**:
$ sudo pvresize /dev/xvdh1 Physical volume "/dev/xvdh1" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
Utilicepvs opvdisplay para ver los detalles del volumen físico:
$ sudo pvs PV VG Fmt Attr PSize PFree /dev/xvdh1 examplegroup1 lvm2 a-- <20.00g <13.00g
Utilicevgs ovgdisplay para ver los detalles del grupo de volúmenes:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 1 1 0 wz--n- <20.00g <13.00g
5.Ejecute el comando lvextend para ampliar el volumen lógico:
$ sudo lvextend -L 19G /dev/examplegroup1/lvexample1
**Nota:**En el ejemplo anterior, 19G es el nuevo tamaño aumentado del LV. 19G no es el tamaño en el que se debe aumentar el LV.
Utilice el comandolvs olvdisplaypara ver los detalles del volumen lógico:
$ sudo lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 19.00g
6.Ejecute el siguiente comando para ampliar el sistema de archivos:
Sistemas de archivos Ext2, Ext3 y Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
Sistemas de archivos XFS:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
Opción 2: Añada volúmenes de EBS adicionales a su grupo de volúmenes y amplíe el VG-LV
1.Cree otro volumen de EBS de 10 GB y, a continuación,adjunte el volumen a la instancia. Cree una partición en el dispositivo**/dev/xvdi** siguiendo el paso 3 de Crear volúmenes físicos en la partición de su volumen de EBS. A continuación, ejecute el comando pvcreate. En el siguiente ejemplo, el nombre del dispositivo de bloques del volumen es /dev/xvdi1.
$ sudo pvcreate /dev/xvdi1 Physical volume "/dev/xvdi1" successfully created
2.Utilice el comando vgextend para ampliar el grupo de volúmenes y añadir el nuevo volumen. El siguiente ejemplo amplía el grupo de volúmenesexamplegroup1 para incluir el volumen**/dev/xvdi1**:
$ sudo vgextend examplegroup1 /dev/xvdi1 Volume group "examplegroup2" successfully extended
Para confirmar la extensión, ejecute el comando vgs o vgdisplay. El siguiente ejemplo muestra que ahora hay dos PV en el grupo de volúmenesexamplegroup1:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 2 1 0 wz--n- 29.99g 20.99g
3.Ejecute el comando lvextend para ampliar el volumen lógico:
$ sudo lvextend -L 29G /dev/examplegroup1/lvexample1
Nota: En el ejemplo anterior, 29G es el nuevo tamaño aumentado del LV. 29G no es el tamaño en el que se debe aumentar el LV.
4.Cambiar el tamaño del sistema de archivos:
Sistemas de archivos Ext2, Ext3 y Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
Sistemas de archivos XFS:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
Ampliar un volumen segmentado
La segmentación es una técnica para distribuir datos en varios discos. Es posible que reciba un mensaje similar al siguiente al extender un volumen lógico:
$ 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
El error anterior o errores similares se producen al extender un volumen lógico «segmentado» sin añadir un número suficiente de dispositivos para segmentar los datos.
Para evitar estos errores al extender un volumen segmentado, siga estos pasos:
1.Ejecute el siguiente comando para identificar la cantidad de dispositivos en los que el LV distribuye los datos.
$ 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 columna #Str, o segmentación, representa la cantidad de dispositivos en los que se distribuyen los datos. En el ejemplo anterior, los datos se distribuyen en 2 dispositivos. Por lo tanto, necesita agregar al menos 2 dispositivos (o dispositivos en múltiplos de 2) al vg para ampliar el LV. Como ha añadido un dispositivo (en los pasos anteriores), añada el segundo dispositivo e intente ampliarlo de nuevo:
$ 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
El resultado del ejemplo anterior muestra que el comando lvextend se ha completado correctamente cuando se ha agregado el segundo dispositivo.
3.Ejecute el siguiente comando para cambiar el tamaño del sistema de archivos:
Sistemas de archivos Ext2, Ext3 y Ext4:
$ sudo resize2fs /dev/vg01/lv01
Sistemas de archivos XFS:
$ sudo xfs_growfs /dev/vg01/lv01
Contenido relevante
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 2 años
- ¿Cómo amplío mi sistema de archivos Linux después de aumentar el volumen de EBS en mi instancia EC2?OFICIAL DE AWSActualizada hace un año