Trabajando con volumenes en Linux

Saludos a to@s,

Me encuentro estudiando para la certificación RHCSA y en este momento estoy trabajando con lo que son volúmenes físicos (physical volumes) , grupos de volúmenes (volume groups) y volúmenes lógicos (logical volumes).  Asi que aprovecharé y compartiré con ustedes el tema.  Básicamente el concepto de volúmenes es utilizado par poder ajustar el tamaño de las “particiones” de forma dinámica sin afectar el sistema de archivos en la instalación corriente.

Esto seria lo equivalente a discos dinámicos y volúmenes expansivos (spanned volumes) en Windows. Debo indicar que al igual que Windows este sistema NO provee tolerancia a fallas y solo atiende la problemática del espacio.

Por ejemplo si mi directorio /var se encuentra en la partición principal del sistema y estoy generando una gran cantidad de datos “variables” puede que llene el disco y los servicios o demonios dejen de funcionar por falta de espacio para datos (ej. MySQL). Pues, si mi partición es un volumen lógico podría asignarle otro disco o partición en otro disco para hacer mas espacio disponible.

En este ejercicio vamos a crear un volumen físico para un grupo  de volúmenes (volume group) llamado vg_1 utilizando el disco /dev/sdb de al menos 20GB de capacidad y la partición /dev/sdb1.  El volumen lógico dentro del “volume group” será llamado extra con un tamaño de 10GB y lo montamos en el directorio /extra.

Les recuerdo que todo esto hay que realizarlo  como root (uid=0), asi que comenzamos por ejecutar $su – y proveemos la contraseña correspondiente.

Verificamos las particiones disponibles

  • #fdisk -l

Creamos la partición que estaremos utilizando, aquí utilizaremos una partición primaria pero puede ser un volumen lógico adentro de una partición extendida. Estamos presumiendo que el disco no tiene datos ni está particionado.

  • #fdisk /dev/sdb
  • n
  • p
  • 1
  • [enter] – aceptar default (starting sector)
  • [enter] – aceptar default (final sector)
  • t
  • 0x8e
  • w

Para obligar al sistema a leer la nueva tabla de particiones utilizo el comando partprobe, pero les tengo que decir que no siempre funciona.  A veces hay que reinicializar el sistema para que reconozca las particiones.

Después de crear o escoger la partición o particiones que estaremos utilizando ejecutamos pvcreate para preparar el disco para LVM. esto lo que hace es marcar la partición como disponible y le inyecte los encabezados necesarios para ser utilizados en un grupo de volúmenes (volume group)

#pvcreate /dev/sdb1

Después tenemos que crear el “volume group” y asignarle las particiones que podrá utilizar. Esto los hacemos con vgcreate.

#vgcreate vg_1 /dev/sdb1

Finalmente creamos el volumen lógico llamado extra de 10GB en el “volume group” vg_1 para ser utilizado por el sistema operativo.

#lvcreate – -name extra – -size 10GB vg_1

Para poder continuar hay que crear un sistema de archivos.  En el caso de Linux el estándar en este momento es ext4 y esto la hacemos con mkfs.

# mkfs.ext4 /dev/vg_1/extra

Después creamos un directorio para montar el volumen o podemos utilizar uno existente

#mkdir /extra

Finalmente montamos el volumen y lo podemos comenzar a utilizar.

#mount /dev/vg_1/extra /extra

… Hecho!

Si deseas que se monte automáticamente solo debes añadir esta linea a /ect/fstab

/dev/vg_1/extra        /extra               ext4                 defaults                  1  2

Si deseas expandir el volumen por 5GB solo debes utilizar lvextend, pero recuerda desmontar la particion primero utilizando umount

#umount /extra

#lvextend – -size +5GB – -resizefs /dev/vg_1/extra

Para ver todas las utilidades que tiene disponibles para trabajar con este tipo de sistema de volúmenes solo vean /sbin.

#ls -al /sbin/?v*

Algo importante que debo mencionar, si estas utilizando virtualización de VMware se recomienda NO utilizar LVM, ya que “pudiera” causar problemas al momento de hacer un P2V o V2V.  Esto no significa que no se pueda utilizar, pero tenemos que tener esto en mente para solo utilizar particiones básicas en nuestros servidores virtualizados o tener en mente que probablemente tengamos que recompilar la imagen en /boot y editar el /etc/fstab para poder subir el servidor después de cualquier proceso de P2V p V2V.

Bueno … hasta la próxima!

JQ

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.