La terminología que está buscando es una "migración de nivel RAID".
Según esto , es posible. No lo he hecho, pero el procedimiento parece que debería agregar la nueva unidad como un hotspare a la matriz existente, luego usar mdadm para actualizar el nivel de incursión y la cantidad de dispositivos de incursión.
Necesitará un mdadm reciente para hacer esto: mdadm-2.6.9 (por ejemplo, centos 5.x) no parece admitirlo, pero mdadm-3.1.4 (por ejemplo, ubuntu 11.10) sí:
Grow Grow (or shrink) an array, or otherwise reshape it in some way. Currently supported growth options including changing the active size of component devices and
changing the number of active devices in RAID levels 1/4/5/6, changing the RAID level between 1, 5, and 6, changing the chunk size and layout for RAID5 and
RAID5, as well as adding or removing a write-intent bitmap.
Por ejemplo, agregue un nuevo dispositivo de repuesto, / dev / sdg, a la matriz RAID5 primero:
$ sudo mdadm --manage /dev/md/md0 --add /dev/sdg
Luego, conviértalo en una matriz RAID6 y haga que se reconstruya a un estado limpio. El --raid-devices 4 le dice cuántas unidades tiene en total en la nueva matriz.
$ sudo mdadm --grow /dev/md/md0 --raid-devices 4 --level 6
Sin embargo, no tengo idea de lo rápido que será. En mi experiencia al hacer migraciones de nivel de incursión en controladores RAID de hardware, ha sido más rápido crear la nueva matriz desde cero y recuperar su copia de seguridad.
Advertencia obligatoria: plan de fracaso. Mantenga una copia de seguridad lista y tenga en cuenta el posible tiempo de inactividad.
Además, pruébelo en una máquina virtual o algo similar antes, esto es de mis notas y no lo he hecho en mucho tiempo. Esto puede estar incompleto.
Necesitará
add
los discos para la matriz:Haga esto para cada uno de los tres discos y reemplace los nombres de los dispositivos en consecuencia.
Crecer la matriz:
fuente
Utilice la
--backup-file
opción para que, en caso de pérdida de energía, pueda continuar haciendo crecer el dispositivo después de un reinicio y asegurarse de que no haya pérdida de datos.El archivo de copia de seguridad debe guardarse en un sistema de archivos que no forme parte de la matriz que va a crecer.
--backup-file=
es necesario cuando--grow
se usa para aumentar el número de dispositivos de incursión en un RAID5 o RAID6 si no hay dispositivos de repuesto disponibles, o para reducir, cambiar el nivel o el diseño de RAID. Consulte la sección MODO DE CRECIMIENTO a continuación sobre CAMBIOS DE DISPOSITIVOS RAID. El archivo debe almacenarse en un dispositivo separado, no en la matriz RAID que se está reformando.--continue
Es complementario a la--freeze-reshape
opción de montaje. Es necesario cuando la--grow
operación se interrumpe y no se reinicia automáticamente debido al--freeze-reshape
uso durante el ensamblaje de la matriz. Esta opción se usa junto con el comando-G
(--grow
) y el dispositivo para continuar con una remodelación pendiente. Todos los parámetros necesarios para la reforma de continuación se leerán de los metadatos de la matriz. Si el--grow
comando inicial requería--backup-file=
que se configurara la opción, la opción de continuación requerirá tener exactamente el mismo archivo de respaldo dado también.Cualquier otro parámetro pasado junto con la
--continue
opción será ignorado.fuente