Crear RAID1 Software en servidores con Proxmox

Es mas que sabido que Proxmox no permite de forma nativa la creación de RAID por software en este capitulo vamos a ver como crear un RAID1 por software en Proxmox con MDADM, el cual tiene un rendimiento muy bueno para esta distribución.

1. Actualizamos nuestros repositorios y descargamos los paquetes necesarios:

apt-get update
apt-get install mdadm initramfs-tools

En la ventana "configuring mdadm" seleccionamos OK y después ALL

2. Añadimos RAID1 en /etc/modules:

echo "raid1" >> /etc/modules

3. Regenerar fichero initrd.img, este proceso suele tardar unos segundos.

mkinitramfs -o /boot/test -r /dev/mapper/pve-root

4. Renombramos el antiguo archivo IMG. En la siguiente linea debemos de sustituir las XXX por la versión de nuestro Kernel. Se puede averiguar la versión del kernel escribiendo en el shell "uname -a"

mv /boot/initrd.img-2.6.x-pve /boot/initrd.img-2.6.x-pve.original

Ejemplo de linea para proxmox 1.6: mv /boot/initrd.img-2.6.32-4-pve /boot/initrd.img-2.6.32-4-pve.original

5. Renombramos el nuevo fichero creado img, en este caso tambien hay que sustituir las XX por la versión del kernel.

mv /boot/test /boot/initrd.img-2.6.x-pve

Ejemplo de linea para proxmox 1.6: mv /boot/test /boot/initrd.img-2.6.32-4-pve

6. Configuramos GRUB en los dos discos para que el RAID pueda arrancar desde cualquiera de los dos.

grub-install --no-floppy /dev/sda
grub-install --no-floppy /dev/sdb

nota: si este paso nos da error es por que no se ha replicado las particiones antes o el disco es nuevo, hay que replicar las particiones: sfdisk -d /dev/sda | sfdisk --force /dev/sdb

7. Editamos el fichero menu.1st, en este fichero deberemos localizar la cadena root UUID y remplazar por root hd(0,0)

pico /boot/grub/menu.lst

8. Editar fichero /etc/fstab deberemos de sustituir la linea: UUID=xxxxxxxxxxxxx /boot ext3 defaults 0 1 por UUID=xxxxxxxxxxxxxxxx /dev/md0 /boot ext3 defaults 0 1

pico /etc/fstab

9. Ahora hay que proceder a clonar las particiones del disco sda al disco sdb para que en el momento de la sincronización todas las particiones sean del mismo tamaño.

sfdisk -d /dev/sda | sfdisk --force /dev/sdb

10. Creamos los dispositivos md en el disco secundario sdb

mdadm --create /dev/md0 --level=1 --raid-devices=2 missing /dev/sdb1
mdadm --create /dev/md1 --level=1 --raid-devices=2 missing /dev/sdb2

11. Salvamos las nueva configuración de los md

mdadm --detail --scan >> /etc/mdadm/mdadm.conf

12. Configurar el dispotivo como dispositivo de arranque:

mkfs.ext3 /dev/md0
mkdir /mnt/md0
mount /dev/md0 /mnt/md0
cp -ax /boot/* /mnt/md0
umount /mnt/md0
umount /boot
mount /dev/md0 /boot
sfdisk --change-id /dev/sda 1 fd
mdadm --add /dev/md0 /dev/sda1
pvcreate /dev/md1 si este comando nos da problema podemos usar pvcreate /dev/md1 -ff
vgextend pve /dev/md1

13. Replicamos los datos de sda2 a md1. nota:este proceso puede tardas horas.

pvmove /dev/sda2 /dev/md1
vgreduce pve /dev/sda2
sfdisk --change-id /dev/sda 2 fd
mdadm --add /dev/md1 /dev/sda2

14. Una vez realizado el raid deberá de empezar a sincronizar, podemos ver el proceso de sincronización del siguiente modo.

watch -n 1 cat /proc/mdstat

Deberemos observar algo parecido a:

md1: active raid1 sda1[1] sdb1[0]
195358336 blocks [2/2] [UU]
[====>................]  resync = 23.6% (46143360/195358336) finish=29.0min speed=85593K/sec
md6 : active raid1 sda1[1] sdb1[0]      195358336 blocks [2/2] [UU]
[====>................]  resync = 23.6% (46143360/195358336) finish=29.0min speed=85593K/sec

15. Ahora cambiamos el valor minimo de velocidad para el RAID

echo 60000 >/proc/sys/dev/raid/speed_limit_min

16. Para configurar el arranque en ambos discos introducimos

apt-get install grub2  (aquí ponerlo todo por defecto)
update-grub fijarnos si en el fichero /boot/grub/grub.cfg está en set root=(md0)
grub-install --no-floppy /dev/md0
grub-install --no-floppy /dev/sda
grub-install --no-floppy /dev/sdb

2 Respuestas

  1. Cesar

    Hola equipo de unelink

    Primero deseo felicitarlos por su aporte comunitario, es de gran ayuda !!!

    A la vez, y si les es posible, quisiera saber como hacer: Crear RAID1 Software en servidores con Proxmox VE 2.1, pues desafortunadamente para mi no es posible aplicar esta guía en Proxmox VE 2.1. ISO instalador

    Esperando su respuesta me despido.
    Saludos cordiales
    Cesar

  2. anaconda

    Muy buen Tutorial. Gracias por compartirlos.