Cambiar disco fallido en RAID software (mdadm)

mdadm es un método de implementar a nivel software las facilidades del RAID a nivel hardware. Aunque en la actualidad, especialmente los servidores de producción, suelen traer todos consigo la posibilidad de crear diferentes tipos de RAID hardware, es cierto que pueden no traerlo. En ese caso y como proteger nuestros datos (y por lo tanto la disponibilidad de los mismos) debería de estar por encima de todo, la opción de tener disponible una solución de RAID puede resultar francamente útil y para hacerlo está mdadm.
mdadm crea el RAID, pero no evita que un disco pueda fallar. Sí tenéis una salida similar a la siguiente,
shell> mdadm -D /dev/md0
/dev/md0:
        Version : 00.90.00
  Creation Time : Thu Ene  2 12:27:05 2014
     Raid Level : raid1
     Array Size : 64128 (62.63 MiB 65.67 MB)
    Device Size : 64128 (62.63 MiB 65.67 MB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Tue Ene  2 18:54:59 2014
          State : active, degraded
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
  Spare Devices : 0

           UUID : 40e3ae0f:fd3ef12a...
         Events : 0.91

Number  Major  Minor  RaidDevice  State
0       0      0      0           faulty removed
1       8      1      1           active sync   /dev/sda1
querrá decir que uno de los discos que compone el RAID ha fallado. Como se puede observar, hay dos discos en el RAID y uno de ellos ya no está presente (/dev/sdb1).
La solución ahora pasa por marcar el RAID como fallido, cambiar el disco y volver a reconstruir el RAID nuevamente. Para hacerlo, os dejo aquí los pasos.
  • Indicamos al RAID que la partición ha fallado
    shell> mdadm --manage /dev/md0 --fail /dev/sdb1
    
  • Eliminamos la partición de RAID
    shell> mdadm --manage /dev/md0 --remove /dev/sdb1
    
  • Apagamos el equipo y cambiamos el disco
  • Replicamos estructura del disco sda al nuevo disco sdb
    shell> sfdisk -d /dev/sda | sfdisk /dev/sdb
    
  • Incluimos en nuevo disco en el RAID
    shell> mdadm --manage /dev/md0 --add /dev/sdb1
    
  • Esperamos a que sincronicen los datos (según el tipo de RAID)
    Durante este tiempo se puede trabajar perfectamente con el equipo, aunque irá un poco más lento, probablemente.
Si algún día lo tenéis que usar, espero que os sea de ayuda y sino, mejor que mejor.


1 comentario :

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

Últimos comentarios