miércoles, 16 de septiembre de 2009

RAID1 en Ubuntu

1. Instalación
NOTA: REALIZAR DURANTE LA INSTALACIÓN DE UBUNTU

En el particionado de discos elegimos la opción "Manual". Debemos estar seguros de que ambos discos rígidos fueron encontrados por el instalador. (se recomiendan dos discos idénticos).
Segido eliminamos cualquier partición existente.

Seguido creamos 3 particiones en ambos discos (para el /,la swap y el /home).
Las particiones deben ser del tipo "physical volume for RAID" (0xFD en fdisk) en ves de "Ext3 journaling file system". Tambien la primera partición de ambos discos debe ser marcada como bootable.

Seguido seleccionamos "Configure software RAID".

Guardamos las modificaciones hechas en la tabla de particiones.

Creamos (3) MD devices (cada uno configurado como RAID1 con 2 activos y 0 hotspace en disco).

Seguido elegimo el la partición del disco físico que será incluida en la RAID1. Es importantr seleccionar dos particiones con idéntico tamaño en nuestro ejemplo md0=sda1+sbd1, md1=sda2+sdb2 y md2=sda3+sdb3.


Configuramos el sistema de ficheros y los puntos de montaje para cada dispositivo RAID. En nuestro ejemplo "RAID device #0" es ext3 montada en /, "RAID device #1" es swap y "RAID device #2" es ext3 montada en /home.

Finalmente seleccionamos "Done setting up the partitions" y "Yes" para escribir los cambios en la tabla de particiones. El resto de la instalación de Ubuntu es normal.

Despues de la instalación y el primer reboot, debemos instalar grub en el segundo disco en el Master Boot Record (MBR). Sin esto la PC no arrancara si el primer disco (/dev/sda) falla y/o es removido de la PC.


~$ sudo grub-install /dev/sda

~$ sudo grub
grub> device (hd0) /dev/sdb
grub> root (hd0,0)
grub> setup (hd0)
grub> quit


WARNING: Hay un bug que hace fallar el boot si uno de los discos físicos seteados en la RAID1 falta. El siguente patch corrige el bug.


~$ cd /tmp
~$ wget http://www.iki.fi/kuparine/comp/ubuntu/en/local.diff
~$ cd /usr/share/initramfs-tools/scripts
~$ sudo patch -p0 < /tmp/local.diff
~$ sudo update-initramfs -k all -u


Aplicar el patch cada vez que initramfs-tools package es actualizado o reinstalado. (con la actualizacion del kernel) .

2. Testeando


~$ grep /dev/md /etc/fstab
~$ df -h / /home
~$ cat /proc/mdstat
~$ sudo mdadm --query --detail /dev/md0
~$ sudo mdadm --query --detail /dev/md1
~$ sudo mdadm --query --detail /dev/md2


3. Recuperar luego del fallo de un disco.


~$ cat /proc/mdstat
~$ sudo mdadm --query --detail /dev/md0
~$ sudo mdadm --query --detail /dev/md1
~$ sudo mdadm --query --detail /dev/md2

~$ sudo mdadm --add /dev/md0 /dev/sdb1
~$ sudo mdadm --add /dev/md1 /dev/sdb2
~$ sudo mdadm --add /dev/md2 /dev/sdb3

cat /proc/mdstat

No hay comentarios:

Publicar un comentario