Que es mdadm y como funciona
mdadm (Multiple Device Administration) es la herramienta estandar de Linux para crear, gestionar y monitorear arreglos RAID por software. A diferencia del RAID por hardware que requiere una controladora fisica dedicada, mdadm implementa el RAID completamente en software usando la CPU del servidor. Es completamente gratuito, esta incluido en todas las distribuciones principales de Linux, y los arreglos creados con mdadm son portables entre servidores Linux.
El RAID por software con mdadm es adecuado para la mayoria de los casos de uso en servidores dedicados, aunque en entornos con escritura muy intensa (grandes bases de datos transaccionales) se puede considerar una controladora RAID por hardware con cache respaldada por bateria.
Preparacion y creacion de un arreglo RAID 1
# Instalar mdadm sudo apt install mdadm # Ubuntu/Debian sudo dnf install mdadm # AlmaLinux # Verificar los discos disponibles lsblk # Crear un RAID 1 con dos discos (/dev/sdb y /dev/sdc) sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc # Ver el estado del arreglo (muestra el progreso de sincronizacion) cat /proc/mdstat
Configurar el arreglo RAID 5 con tres discos
# Crear RAID 5 con tres discos sudo mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd # Formatear el arreglo con el sistema de archivos ext4 sudo mkfs.ext4 /dev/md0 # Montar el arreglo sudo mkdir -p /datos sudo mount /dev/md0 /datos
Hacer el arreglo RAID persistente tras reinicios
# Guardar la configuracion del arreglo en mdadm.conf sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf # Actualizar initramfs para que el arreglo arranque automaticamente sudo update-initramfs -u # Agregar el arreglo al fstab para montado automatico echo "/dev/md0 /datos ext4 defaults 0 2" | sudo tee -a /etc/fstab
Monitorear el estado del arreglo RAID
| Comando | Informacion que muestra |
|---|---|
cat /proc/mdstat |
Estado en tiempo real de todos los arreglos RAID |
mdadm --detail /dev/md0 |
Informacion detallada del arreglo especifico |
mdadm --query /dev/sdb |
A que arreglo pertenece el disco |
Que hacer cuando un disco del RAID falla
# Marcar un disco como fallido manualmente sudo mdadm /dev/md0 --fail /dev/sdb # Eliminar el disco fallido del arreglo sudo mdadm /dev/md0 --remove /dev/sdb # Agregar el disco de reemplazo al arreglo sudo mdadm /dev/md0 --add /dev/sde # El arreglo comienza a reconstruirse automaticamente watch cat /proc/mdstat