¿Cómo creo un volumen lógico LVM en una partición creada en un volumen de EBS?
¿Cómo puedo usar Logical Volume Manager (LVM) para crear un volumen lógico (LV) en una partición creada en mi volumen de Amazon Elastic Block Store (Amazon EBS)?
Descripción breve
LVM le permite asignar espacio en el disco dividir, volver a reflejar en espejo y cambiar el tamaño de los volúmenes lógicos. Con LVM, puede asignar un volumen de EBS o un conjunto de volúmenes de EBS a uno o más volúmenes físicos.
Para usar LVM en su volumen de EBS y ampliar las particiones, siga estos pasos:
- Cree volúmenes físicos (PV) a partir de su volumen de EBS.
- Cree un grupo de volúmenes (VG) y, a continuación, añada los volúmenes físicos al grupo de volúmenes.
- Cree un volumen lógico (LV) y, a continuación, monte el directorio en el LVM.
- Cree y monte un sistema de archivos.
- Cambie el tamaño del volumen lógico.
Resolución
Nota: Si ya creó LVM en su volumen y lo montó para usarlo, siga las instrucciones que comienzan en Ampliar el volumen lógico.
Cree volúmenes físicos en la partición de su volumen de EBS
La unidad de almacenamiento físico subyacente de un volumen lógico LVM es un dispositivo de bloques, como una partición de un volumen EBS o un volumen EBS completo.
Nota: Las instancias basadas en Nitro exponen los volúmenes como dispositivos NVMe. Los nombres de los dispositivos de bloques siguen el patrón**/dev/nvme1n1**, /dev/nvme2n1, /dev/nvme3n1, etc. Si utiliza una instancia basada en Nitro, reemplace los nombres de los dispositivos en los siguientes pasos por el nombre de dispositivo correspondiente. Para obtener más información sobre los nombres de dispositivos, consulte Nombres de dispositivos en instancias de Linux.
1. Abra la consola deAmazon Elastic Compute Cloud (Amazon EC2).
2. Cree su volumen de EBS y, a continuación, adjunte el volumen a su instancia.
3. Use el comandogdiskpara crear una partición. Para la variable Código hexadecimal o GUID, escriba8e00. El siguiente ejemplo crea la partición**/dev/xvdh1** en**/dev/xvdh**.
$ sudo gdisk /dev/xvdh Command (? for help): n Partition number (1-1218, default 1): 1 First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): 8e00 Changed type of partition to 'Linux LVM' ... OK; writing new GUID partition table (GPT) to /dev/xvdh. The operation has completed successfully.
Utilice el comandolsblk para confirmar la creación de la partición:
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdh 202:80 0 10G 0 disk └─xvdh1 202:81 0 10G 0 part
4. Utilice el comandopvcreate para crear un volumen físico a partir de la partición. El siguiente ejemplo crea un volumen físico a partir de**/dev/xvdh1**:
$ sudo pvcreate /dev/xvdh1 Physical volume "/dev/xvdh1" successfully created.
Cree grupos de volúmenes y añada los volúmenes físicos al grupo de volúmenes
Utilice el comandovgcreate para crear un grupo de volúmenes para combinar los nuevos volúmenes físicos. El siguiente ejemplo usa un volumen físico para crear el grupo de volúmenesexamplegroup1:
$ sudo vgcreate examplegroup1 /dev/xvdh1 Volume group "examplegroup1" successfully created
Utilicevgs ovgdisplay para ver los detalles del grupo de volúmenes:
$ sudo vgs VG #PV #LV #SN Attr VSize VFree examplegroup1 1 0 0 wz--n- <10.00g <10.00g
Cree un volumen lógico (LV) y un directorio de montaje
1. Utilice el comandolvcreatepara crear volúmenes lógicos (particiones) a partir de su grupo de volúmenes. El siguiente ejemplo crea un volumen lógico de 9GB,lvexample1 a partir del grupo de volúmenesexamplegroup1:
$ sudo lvcreate -n lvexample1 -L 9G examplegroup1 Logical volume "lvexample1" created
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----- 9.00g
2. Use el comandomkdirpara crear un directorio de montaje. El siguiente ejemplo crea el directorio**/mnt1**:
$ sudo mkdir /mnt1
Crear y montar un sistema de archivos
1. Utilice los siguientes comandos para crear un sistema de archivos y montar las particiones para su uso.
Ejecute el comandomkfs -tpara crear el sistema de archivos. Nota: Sustituyaxfs por su tipo de sistema de archivos, si es diferente. Por ejemplo, utilice ext2, ext3 o ext4.
$ sudo mkfs -t xfs /dev/examplegroup1/lvexample1
Ejecute el comandolsblk -f para comprobar la creación del nuevo sistema de archivos. Nota: El tipo de sistema de archivos que creó en el paso anterior aparece enFSTYPE.
$ lsblk -f NAME FSTYPE LABEL UUID MOUNTPOINT xvda ├─xvda1 └─xvda2 xfs 66e5e079-770e-4359-a9da-5205c3d8d5af / xvdh └─xvdh1 LVM2_member 0UnOic-e2ng-XxH5-z0UW-7aTh-RxQK-KMrDqo └─examplegroup1-lvexample1 xfs 5db36052-81d5-4762-8502-6986ff3964e7
Ejecute el comando mount para montar el sistema de archivos en el directorio de montaje que creó en el paso anterior:
$ sudo mount /dev/examplegroup1/lvexample1 /mnt1
2. Edite las opciones de montaje en el archivo /etc/fstab para que se mantenga el nuevo montaje después de reiniciar.
/dev/examplegroup1/lvexample1 /mnt1 xfs defaults,nofail 0 0
Nota: Si su tipo de sistema de archivos no esxfs, sustituyaxfs por el tipo del archivo**/etc/fstab**.
Ampliar el volumen lógico
Hay dos opciones para ampliar los volúmenes lógicos:
- Opción 1: Aumente el tamaño del volumen de EBS existente.
- Opción 2: Añada volúmenes de EBS adicionales a su grupo de volúmenes.
Opción 1: Aumentar el tamaño del volumen de EBS existente
Nota: Al aumentar el tamaño de su volumen existente, los cambios de tamaño suelen surtir efecto en unos segundos cuando el volumen entra en 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, consulteMonitorear el progreso de las modificaciones de volumen.
1. Modifique el tamaño del volumen de EBS existente.
2. Instale 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 extender la partición y, a continuación, ejecute el comando pvresize para cambiar el tamaño del PV. En el siguiente ejemplo, se amplía la partición**/dev/xvdh1**:
$ sudo growpart /dev/xvdh 1 CHANGED: disk=/dev/xvdh partition=1: start=2048 old: size=20971519,end=16777182 new: size=41940958,end=41943006 $ 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
4. Ejecute el comando lvextend para ampliar el volumen lógico:
$ sudo lvextend -L 19G /dev/examplegroup1/lvexample1
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
5. Ampliar el sistema de archivos:
Nota: Asegúrese de introducir el tipo de sistema de archivos correcto en la entrada /etc/fstab.
Sistemas de archivos Ext2, Ext3, y Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
Sistemas de archivos XFS:
$ sudo yum install x rogs $ sudo xfs_growfs /dev/examplegroup1/lvexample1
Opción 2: Añadir volúmenes de EBS adicionales al grupo de volúmenes
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
4. Cambiar el tamaño del sistema de archivos:
Nota: Según su caso práctico, siga los pasos para los sistemas de archivos XFS o Ext2, Ext3 y Ext4.
Sistemas de archivos Ext2, Ext3, y Ext4:
$ sudo resize2fs /dev/examplegroup1/lvexample1
Sistemas de archivos XFS:
$ sudo xfs_growfs /dev/examplegroup1/lvexample1
Información relacionada
¿Cómo creo un volumen lógico de LVM en un volumen de EBS completo?
Contenido relevante
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 10 meses
- OFICIAL DE AWSActualizada hace 5 años