Está en la página 1de 9

COMO CREAR UN RAID EN LINUX

Paquete mdadm mdadm para crear RAIDs por software Para la creacin y administracin de una RAID por software necesitaremos el paquete mdadm. La antigua coleccin de utilidades para RAID de los paquetes raidtools y raidtools2 se ha dejado de usar actualmente puesto que dependa de un fichero de configuracin (/etc/raidtab) difcil de mantener, y sus funciones eran limitadas. Desde agosto de 2001, existe la herramienta mdadm (multiple devices admin), ste paquete nos permite gestionar las RAIDs por software de una manera mucho mas simple y robusta. Actualmente se ha convertido en un estndar.

Instalar mdadm en Ubuntu En principio el paquete mdadm viene instalado por defecto en Ubuntu. Asimismo si no disponis del paquete instalado podis instalarlo con el Gestor de paquetes Synaptic o bien con el siguiente comando:
$ sudo apt-get install mdadm

CARGAR EL MDULO RAID


Para que ubuntu pueda trabajar con las RAID puede ser necesario cargar primero el mdulo correspondiente. $ sudo modprobe raid1 o $ sudo modprobe raid0 si se quiere un RAID0, o los dos si quieres usar ambos tipos de RAID.

Crear una RAID


En el caso ejemplo que voy a exponer crear una RAID5 con 4 discos. Asimismo este procedimiento se puede seguir mas o menos de manera anloga para crear cualquier tipo de RAID. Particionamiento

Debemos tener en cuenta, que puesto que vamos a crear una Software RAID, vamos a utilizar particiones en lugar de discos. Sin perjuicio que cada disco contenga una sola particin con la totalidad del tamao del disco, como de hecho es indicado. As pues primeramente debemos preparar las particiones que vamos a utilizar para crear la RAID. Para esto podemos utilizar cualquier herramienta de particionamiento. En nuestro caso vamos a utilizar GParted, una herramienta grfica de fcil uso. Puesto que Ubuntu no la lleva instalada por defecto la instalaremos mediante el Gestor de paquetes Synaptic, o bien con apt-get mediante comandos: $ sudo apt-get install gparted Una vez instalado GParted, procedemos a crear una particin para la totalidad de cada uno de los discos idnticos de los que disponemos para crear la RAID. Debemos crear una particin sin formato, puesto que el formato de la RAID lo daremos cuando esta est construida. A parte del formato debemos indicar que se tratar de un disco para crear una RAID. Esto lo podemos hacer de manera fcil con GParted, seleccionando la particin e yendo a Men Particin>gestionar sealadores y marcando el sealador "RAID", tal y como muestran las imgenes.

GParted con particin sin formato y con sealador RAID

Marcar la particin como RAID no es vital para el funcionamiento de la RAID, asimismo es la manera ms correcta de hacerlo y nos ayudar a distinguir las particiones en un futuro. Con fdisk veremos este hecho marcado como "Autodeteccin Linux raid" (Linux raid autodetect). Una vez acabado el proceso podemos ver con fdisk -l un listado de las particiones como el siguiente (esta en Catal puesto a que mi sistema est en este idioma):
$ sudo fdisk -l Disc /dev/sdb: 200.0 GiB, 200049647616 octets 255 capals, 63 sectors/pista, 24321 cilindres Unitats = cilindres de 16065 * 512 = 8225280 octets Dispositiu Arrenc. Comena Acaba Blocs Id Sistema /dev/sdb1 1 24321 195358401 fd Autodetecci Linux raid Disc /dev/sdc: 200.0 GiB, 200049647616 octets 255 capals, 63 sectors/pista, 24321 cilindres Unitats = cilindres de 16065 * 512 = 8225280 octets Dispositiu Arrenc. Comena Acaba Blocs Id Sistema /dev/sdc1 1 24321 195358401 fd Autodetecci Linux raid Disc /dev/sdd: 200.0 GiB, 200049647616 octets 255 capals, 63 sectors/pista, 24321 cilindres Unitats = cilindres de 16065 * 512 = 8225280 octets Dispositiu Arrenc. Comena Acaba Blocs Id Sistema /dev/sdd1 1 24321 195358401 fd Autodetecci Linux raid Disc /dev/sde: 200.0 GiB, 200049647616 octets 255 capals, 63 sectors/pista, 24321 cilindres Unitats = cilindres de 16065 * 512 = 8225280 octets Dispositiu Arrenc. Comena Acaba Blocs Id Sistema /dev/sde1 1 24321 195358401 fd Autodetecci Linux raid

Podemos observar que la columna Id muestra el valor "fd" esto es debido a que lo hemos marcado como "Autodeteccin Linux raid" (Linux raid autodetect).

Creacin de la RAID
Primeramente antes de crear la RAID podemos ver en el fichero /proc/mdstat si al algn otro array: $ cat /proc/mdstat Personalities : Event: 0 unused devices: <none> Vemos que no aparece ningn array. Proseguimos a la creacin del md en el que crearemos la RAID. Para ello utilizaremos el comando mknod como se muestra en la siguiente orden: $ sudo mknod /dev/md0 b 9 0 Si ya tuviramos algn otro array llamado md0, podemos crear un md diferente: md1, md2, ... Procedemos ahora a crear finalmente la RAID: $ sudo mdadm --create /dev/md0 --level=raid5 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 Continue creating array? yes mdadm: array /dev/md0 started. La raid hecho esto empezar a crearse. Detalles del comando mdadm --create /dev/md0 --level=raid5 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 :

En --create /dev/md0 le indicaremos el md al que vamos a asignar el array. Si hemos escogido otro lo deberemos cambiar aqu. En --level=raid5 indicaremos el tipo de raid que queremos que sea. Los valores validos aqu son: linear, raid0, 0, stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, multipath, mp, fautly. Como vemos algunos de ellos son sinnimos, por lo que para una RAID5 podemos introducir "raid5" o bien "5". Como vemos debemos indicarle las PARTICIONES (no los discos) con las que hacer la RAID, as como el numero de particiones: --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 otros modificadores tiles (no utilizados en el ejemplo):

--verbose nos explica mas cosas sobre lo que pasa.

--chunk= especifica cada segmento en kibibytes. Por defecto es 64. Ej: -chunk=32. Antes de decidir el tamao del segmento es recomendable que consultes el apartado de Factores de optimizacin del sistema de archivos en una RAIDde este mismo documento. --parity= Establece el algoritmo de paridad para RAID5. Las opciones son: leftasymmetric, left-symmetric, right-asymmetric, right-symmetric (la, ra, ls, rs en sus versiones reducidas). Por defecto es left-symmetric. Ej: --parity=right-asymmetric. Este modificador tiene otras opciones avanzadas.

Una vez hemos lanzado la orden de creacin de la RAID, empezarn a trabajar los discos como locos: estn creando la RAID. Este proceso puede durar varias horas dependiendo de la capacidad de los discos y la potencia del ordenador/discos. Podemos visualizar fichero /proc/mdstat: en cualquier momento el estado de ste proceso en el

$ cat /proc/mdstat Personalities : [raid5] [raid4] md0 : active raid5 sdb1[0] sde1[3] sdd1[2] sdc1[1] 586075008 blocks [4/3] [UUU_] [>....................] resync = 0.7% (4103401/586075008) finish=177.6min speed=97640K/sec [4/3] [UUU_] nos indica el numero de discos que esta activo y correcto en este momento. No nos tenemos que preocupar porque durante ste periodo de creacin de la RAID nos marque que hay alguno incorrecto. Cuando finalice el proceso ste indicador deber mostrarnos que todos los discos estn correctos. Una vez ha terminado el proceso de construccin de la raid podemos ver de nuevo en el fichero /proc/mdstat el estado de nuestro array: $ cat /proc/mdstat Personalities : [raid5] [raid4] md0 : active raid5 sdb1[0] sde1[3] sdd1[2] sdc1[1] 586075008 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU] unused devices: <none> Perfecto! Una vez creada la RAID solo debemos montarla y formatearla con el sistema de ficheros que deseemos.

Formatear la RAID
Para formatear la RAID utilizaremos el comando mkfs: Con ReiserFS

mkfs.reiserfs /dev/md0 En mi caso he utilizado el sistema de archivos ReiserFS, pero podemos utilizar cualquier otro como ext3: Con ext3 mkfs.ext3 /dev/md0

Montar la RAID
Para montar la RAID aadimos la siguiente lnea al fichero /etc/fstab /dev/md0 /punto_de_montaje sistema_de_archivos defaults,user 0 0 Recuerda que debes tener creada la carpeta /punto_de_montaje (la ruta que quieras), con los permisos correspondientes a los usuarios que quieras que accedan a la RAID. Recuerda tambin que debes especificar que sistema de archivos es la RAID cambiandosistema_de_archivos por reiserfs, ext3... segn hayas escogido. Para montar la raid bastara luego con hacer: $ sudo mount /punto_de_montaje O bien reiniciar y que Ubuntu la monte automticamente en el inicio del sistema.

Monitorizacin del estado una RAID y sus discos


Estado actual de los discos y unidades RAID cat /proc/mdstat $ cat /proc/mdstat Personalities : [raid5] [raid4] md0 : active raid5 sdb1[0] sde1[3] sdd1[2] sdc1[1] 586075008 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU] unused devices: <none>

Mas detalles sobre las unidades RAID

mdadm --query /dev/md0

$ sudo mdadm --query /dev/md0 /dev/md0: 558.92GiB raid5 4 devices, 0 spares. Use mdadm --detail for more detail. mdadm --detail /dev/md0 $ sudo mdadm --detail /dev/md0 /dev/md0: Version : 00.90.03 Creation Time : Sat Jan 20 17:27:56 2007 Raid Level : raid5 Array Size : 586075008 (558.92 GiB 600.14 GB) Device Size : 195358336 (186.31 GiB 200.05 GB) Raid Devices : 4 Total Devices : 4 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Sun Jan 21 22:23:05 2007 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Layout : left-symmetric Chunk Size : 64K UUID : d65ce83c:150ba8ab:cfc213b0:81723f7b Events : 0.3084 Number Major Minor RaidDevice State 0 8 17 0 active sync /dev/sdb1 1 8 33 1 active sync /dev/sdc1 2 8 49 2 active sync /dev/sdd1 3 8 65 3 active sync /dev/sde1

Mas detalles de los discos

mdadm --query /dev/sdb1 $ sudo mdadm --query /dev/sdb1 /dev/sdb1: is not an md array /dev/sdb1: device 0 in 4 device active raid5 /dev/md0. Use mdadm --examine for more detail.

mdadm --examine /dev/sdb1

$ sudo mdadm --examine /dev/sdb1 /dev/sdb1: Magic : a92b4efc Version : 00.90.00 UUID : d65ce83c:150ba8ab:cfc213b0:81723f7b Creation Time : Sat Jan 20 17:27:56 2007 Raid Level : raid5 Device Size : 195358336 (186.31 GiB 200.05 GB) Array Size : 586075008 (558.92 GiB 600.14 GB) Raid Devices : 4 Total Devices : 4 Preferred Minor : 0 Update Time : Sun Jan 21 22:23:05 2007 State : clean Active Devices : 4 Working Devices : 4 Failed Devices : 0 Spare Devices : 0 Checksum : 7cd3d7e7 - correct Events : 0.3084 Layout : left-symmetric Chunk Size : 64K Number Major Minor RaidDevice State this 0 8 17 0 active sync /dev/sdb1 0 1 2 3 0 1 2 3 8 8 8 8 17 33 49 65 0 1 2 3 active sync active sync active sync active sync /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Administracin de una RAID y sus discos

Establecer un disco como faulty/failed:

$ sudo mdadm --fail /dev/md0 /dev/sdb1 No utilizar en RAID0 RAID en modo linear. Pueden perderse los datos!

Quitar un disco fallido de una RAID:

$ sudo mdadm --remove /dev/md0 /dev/sdb1

Limpiar cualquier informacin previa de un disco RAID (Ej. al reutilizar un disco de otra raid antigua)

$ sudo mdadm --zero-superblock /dev/sdb1

Aadir un disco a la RAID

$ sudo mdadm --add /dev/md0 /dev/sdb1

Aadir soporte "bitmap" a un RAID

$ sudo mdadm --grow /dev/mdX --bitmap=internal

Quitar el soporte de "bitmap" a un RAID

$ sudo mdadm --grow /dev/mdX --bitmap=none

También podría gustarte