En este momento estás viendo LVM  Que es, como se instala y gestiona.

LVM Que es, como se instala y gestiona.

Vamos a ver que es LVM (Logical Volume Manager), como instalarlo en un Ubuntu Server o cualquier otra distribución basada en Debian.

¿Que es LVM?

LVM es una implementación de un gestor de volúmenes lógicos para el núcleo Linux, se utiliza para gestionar el espacio de almacenamiento. Se escribió originalmente en 1998 por Heinz Mauelshagen, que se basó en el administrador de volúmenes de Veritas usado en sistemas HP-UX.

El LVM establece una capa lógica entre el sistema de archivos y las particiones del almacenamiento de datos utilizado. Esto le permite crear un sistema de archivos que abarque varias particiones y/o discos. De este modo, por ejemplo, se puede combinar el espacio de almacenamiento de varias particiones o soportes de datos.

Ventajas de utilizar LVM

1.- Podemos crear, ampliar o reducir los volúmenes lógicos (LV), sobre la marcha, sin necesidad de formatear los soportes de almacenamiento.
2.- También podemos redimensionar los grupos lógicos (VG).
2.- Los datos los tendremos distribuidos por varios soportes, aumentando el rendimiento del sistema.
3.- Se pueden reorganizar los datos mientras estamos trabajando.
4.- La replicación de los datos es sencilla.
5.- Es posible realizar Snapshots.
6.- Tenemos la opción de RAID0 de volúmenes lógicos (LV).

Para implementar otro tipo, como RAID1 o RAID5, que son los más utilizados, es recomendable utilizar un software específico y tener los volúmenes lógicos por encima del RAID.

Vamos a definir los conceptos…

  • Volúmenes físicos (PV): el PV representa el nivel más bajo de un LVM. Son discos físicos y las particiones (dispositivo de bloque) del disco duro con sistema de archivos LVM.
  • Volúmenes lógicos (LV): es el equivalente a una partición en un sistema tradicional. El LV es visible como un dispositivo estándar de bloques (loop), por lo que puede contener un sistema de archivos (por ejemplo /home). Se pueden utilizar como una partición normal,y formatearlos con cualquier sistema de archivos, y pueden ser montados.
  • Grupos de volúmenes (VG): es la parte superior del LVM. Es el contenedor en el que tenemos nuestros volúmenes lógicos (LV) y nuestros volúmenes físicos (PV). Se puede ver como una unidad administrativa en la que se engloban nuestros recursos. Hay que hacer notar que mientras un PV no se añada al VG, no podemos comenzar a usarlo.

Con LVM, las particiones clásicas se inicializan como PV, que se asignan a un VG. Dentro de este grupo de volumen, los LV pueden crearse y formatearse con cualquier sistema de archivos.

¿Porqué usar LVM en un sistema pequeño?

Cuando instalamos un sistema operativo GNU/Linux, una de las primeras decisiones es como particionar el disco. Aunque algunos lo instalan en un disco, sin hacer particiones, lo recomendable es separarlas. Por lo menos para los directorios /(Raiz), /boot, /swap (memoria de intercambio) y /home (directorio del usuario), si trabajamos con bases de datos, sería conveniente también separar /var, que es el directorio que las contendrá. Para ello, tendremos que decidir cuanto espacio asignamos a estos directorios.

Con LVM, podemos asignar el disco duro físico a un grupo lógico y a partir de aquí, crear varios volúmenes lógicos para los distintos directorios. Esto nos permitirá redimensionarlos después. Si por ejemplo, nos quedamos sin espacio en /home, podemos reducir el tamaño de un LV, que tengamos sobredimensionado, y asignárselo /home. (No todos los sistemas de ficheros soportan redimensionado por arriba y por abajo). Podemos dejar espacio sin asignar y así tendremos espacio para aumentar donde necesitemos.

¿Porqué usar LVM en un sistema grande?

Trabajar con muchos discos es una tarea ardua y a veces compleja, ya que trabajamos con soportes que contienen datos importantes. Con LVM se simplifica el trabajo y se realiza con más seguridad.

Al trabajar con grupos de usuarios, nos permite asignar volúmenes lógicos a cada uno, y gestionar el espacio asignado según las necesidades.

Por ejemplo, si con las particiones tradicionales (MBR y GPT), hemos creado 4 particiones contiguas en un disco, y necesitamos aumentar alguna de las 3 primeras, no podemos hacerlo sin borrar las siguientes, lo que es un problema y requerirá de parada del servicio casi seguro.

Con LVM se resuelve este problema, además de que convertimos el sistema en escalable con mucha facilidad, pudiendo añadir nuevos discos físicos.

Después de añadir un disco físico al sistema, no es necesario migrar los datos de los usuarios. Incorporamos este al grupo lógico (VG) y redimensionamos los volúmenes lógicos(VL) añadiendoles espacio.

Vamos a verlo con un ejemplo práctico.

En una máquina virtual con S.O. Ubuntu Server, veremos:

1.- Instalación de Logical Volume Manager (LVM).
2.- Creamos la estructura que queremos.
3.- Añadimos un nuevo disco duro.
4.- Eliminamos un disco duro.

Instalación de Logical Volume Manager (LVM)

Ampliamos la máquina con 4 discos duros de 2Gb. Lo comprobamos con el siguiente comando,

fdisk -l

Instalamos el paquete lvm2 en nuestra máquina (Ubuntu Server)

sudo apt-get install lvm2

Creamos particiones en cada hd (fdisk /dev/sdb). Crearemos el particionado del disco duro (una sola partición primaria que ocupará todo el disco duro) de tipo LVM (tipo 8e).

fdisk /dev/sdb

Creamos las particiones para LVM

pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Borramos las particiones creadas

pvremove /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Para comprobar que funciona lo volvemos a crear

pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Comprobamos

pvdisplay

Creamos el volumen lógico, sobre el sistema físico (fileserver es el nombre de grupo)

vgcreate fileserver /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Comprobamos

Sobre el volumen lógico creado, haremos las siguientes particiones:

lvcreate –name system –size 1Gb fileserver
lvcreate –name backup –size 1Gb fileserver
lvcreate –name save –size 1Gb fileserver 

Esto son volúmenes lógicos. Comprobamos

lvdisplay
lvscan

Para agrandar una particion en el volumen lógico

lvextend -L2.5G /dev/fileserver/save

o para reducirla…

lvreduce -L1G /dev/fileserver/save

Damos formato a cada uno de los volúmenes lógicos: system ext3, backup xfs y save reiserfs.

mkfs.ext3 /dev/fileserver/system
mkfs.xfs /dev/fileserver/backup
mkfs.reiserfs /dev/fileserver/save

Creamos punto de montaje.

¿Y si los quisieramos añadir al fstab?

Esto será absolutamente necesario si la instalación es para producción. Si no, el sistema, no lo montaría al inicio.

Para aumentar el tamaño de la partición «system» en 0,5 Gb. Ahora que están montadas, deberemos desmontarlas primero para poder utilizar el comando «lvextend«.

umount /dev/fileserver//system
lvextend -L1,5 /dev/fileserver/system
resize2fs /dev/fileserver/system

El comando «resize» extiende el formato a la ampliación

Y lo montamos

mount /dev/fileserver/system

Añadimos un nuevo disco duro

Ahora añadimos un nuevo disco duro. Para ello, primero crearemos la partición primaria de tipo linux LVM (8e) y añadiremos el nuevo volúmen físico (PV, 1o)

Extenderemos, por tanto, el tamaño del grupo VG «fileserver» (vg, 2o). Lo añadimos al volumen lógico.

vgextend lvm /dev/sdf1

Comprobamos el nuevo tamaño del VG «fileserver» (vg, 2o)

vgdisplay

Eliminamos un disco duro

Ahora vamos a eliminar el disco duro /dev/sdb1 perteneciente a VG «fileserver». Como contiene datos, primero copiaremos los datos de la partición sdb1,a la partición recién añadida /dev/sdf1.

pvmove /dev/sdb1 /dev/sdf1

Eliminamos la partición del VG «fileserver»

vgreduce fileserver /dev/sdb1

Comprobamos el nuevo tamaño del VG «fileserver«

Eliminamos la pertenencia del disco duro del PV

pvremove /dev/sdb1

Comprobamos que el PV ha disminuido de tamaño

Ya se puede quitar el disco duro sdb

pvremove /dev/sdb1

Si tienes algún comentario que hacer, al pie del post tienes un formulario para hacerlo.

Y si quieres contactar conmigo por cualquier otro asunto relacionado con el sitio, o te quieres suscribir para recibir un correo-e cuando haya una nueva publicación, en la pagina de contacto, tienes otro formulario.

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.