RAID y LVM en Linux

De Wiki de BandaAncha.eu
Saltar a: navegación, buscar

Introducción

En esta guía vamos a explicar como configurar un RAID y un LVM para un sistema GNU/Linux. Partiendo de dos discos duros montaremos el siguiente sistema:

  • RAID tipo 1 que nos permitirá mantener los datos mas críticos en dos particiones en espejo, en el caso de fallar uno de los discos no perderíamos datos.
  • LVM que nos permite unir varios discos en un volumen lógico, si nos quedamos sin espacio podemos añadir otro disco duro y unir este espacio al LVM en caliente.

Instalar las herramientas necesarias

sudo apt-get install mdadm
sudo apt-get install lvm2

Tabla de particiones inicial

/dev/sda1 /               jfs    10GB  ---> Sistema Operativo
/dev/sda2 none            swap   1GB   ---> Swap
/dev/sda3 /media/hda3     jfs    15GB  ---> RAID
/dev/sda4 /media/hda4     jfs    125GB ---> LVM
/dev/sdb1 /media/hdc1     jfs    15GB  ---> RAID
/dev/sdb2 /media/hdc2     jfs    45GB  ---> LVM

El primer disco (sda) lo tenemos dividido en 4 particiones: raiz, swap, una para el RAID (/media/hda3) y el espacio restante para añadir al LVM (/media/hda4) EL segundo disco (sdb) esta dividido en dos particiones, la primera (media/hdc1) sera el otro disco del RAID y el espacio restante (/media/hdc2) lo uniremos al LVM



RAID

Antes de empezar debemos colocar a las particiones que van a formar parte del RAID el flag fd (linux raid auto). Esto se puede hacer desde fdisk o desde gparted. Las 2 particiones que van a formar nuestro RAID deben ser del mismo tamaño. Para crear el RAID las particiones tienen que estar desmontadas:

umount /dev/sda3
umount /dev/sdb1

Luego creamos el RAID en /dev/md0

sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb1

--create /dev/md0 sera el nombre del RAID que estamos creando

--level=1 le indicamos que tipo de RAID estamos creando, en este caso RAID1

--raid-devices=2 el numero de dispositivos que forman el RAID

/dev/sda3 /dev/sdb1... la lista de dispositivos que forma parte del RAID


Formateamos el RAID y lo montamos (En mi caso el sistema de archivos sera jfs)

sudo mkfs.jfs /dev/md0
sudo mkdir /media/Personal
sudo mount /dev/md0 /media/Personal

Con esto ya tendríamos el RAID funcionando, solo queda modificar el fichero /etc/fstab para que no monte las particiones /media/hda3 y /media/hdc1 y nos monte la partición /media/Personal


LVM

Las particiones que formaran el LVM tienen que tener el flag 8e (Linux VM) Las particiones que van a formar el LVM también deben estar desmontadas:

umount /dev/sda4
umount /dev/sdb2

Con el comando pvcreate marcamos los volúmenes para meterlos en el LVM:

sudo pvcreate /dev/sda4
sudo pvcreate /dev/sdb2

Y después creamos el VG (Grupo de Volúmenes)

sudo vgcreate lvm /dev/sda4 /dev/sdb2

Ahora añadimos los volúmenes lógicos (LV) dentro del LVM... es como si hiciéramos particiones del Grupo de volúmenes. En este caso solo creare una partición a la que asignare todo el espacio. Si queremos crear mas particiones para saber de cuanto espacio disponemos podemos ejecutar el comando vg display que nos devuelve información acerca del lvm

sudo vgdisplay lvm

Antes de crear el LV debemos cargar el modulo Device mapper driver:

sudo modprobe dm-mod 

Ahora creamos el LV:

sudo lvcreate -n Datos -l 100%VG  lvm

-n Datos sera el nombre del LV

-l Puedes especificar el tamaño en porcentaje del VG, en este caso he dejado para el LV el 100% del VG, ya que quiero que todo aparezca como un unico disco.

-L Esta opción nos permitiría especificar el tamaño en Kb, Mb, Gb del LV, por ejemplo -L250G (crea un LV de 250GB)

Por ultimo formateamos, montamos y listo (el LV lo crea en la ruta /dev/lvm):

sudo mkfs.jfs /dev/lvm/Datos
sudo mkdir /media/Datos
sudo mount /dev/lvm/Datos /media/Datos

También seria necesario modificar el fichero /etc/fstab para que no monte las particiones /media/hda4 y /media/hdc2 y nos monte la partición /media/Datos

Aumentar el LVM

Si añadimos mas discos al LVM podemos extender de tamaño todos los volúmenes lógicos que tengamos creados, primero creamos el nuevo dispositivo que va a añadirse al LVM (recuerda que debe tener el flag 8e):

sudo pvcreate /dev/dispositivo_a_añadir

Ahora añadimos este disco al VG, con lo que ya disponemos de mas espacio para repartir entre los volúmenes lógicos (/dev/lvm/Datos)

vgextend lvm /dev/dispositivo_a_añadir

Por ultimo repartimos este espacio según nuestras necesidades, por ejemplo aumentamos el tamaño de /media/Datos en 20GB procedentes del dispositivo que acabamos de añadir

lvextend -L20G /dev/lvm/Datos /dev/dispositivo_a_añadir