Cambiar de un disco único a uno de mas capacidad
#1
Hola

La idea de este tutorial es permitir el cambio de nuestro único disco a otro de mayor tamaño.
El volumen deberá ser Thin o Thick, los estáticos son eso, estáticos y no se pueden alterar.

En otro tutorial anterior se indica como deshacer un raid1 para quedarnos únicamente con uno de los discos como simple. La idea es cambiarlo/renovarlo por aviso Smart

La forma que voy a describir no está soportada por QNAP, ni QTS. Pero al ser la nas un sistema Linux podemos hacerlo.
Evidentemente siempre hay que tener copia de seguridad previa de datos, por si algo sale mal, y mas en este caso que nunca se sabe cuando se trabaja con particiones  Exclamation 

Queremos iniciar la QNAP con un disco de 160GB y acabar migrando todo a un nuevo disco de mayor capacidad de 250GB.
Usaremos la consola o terminal (putty) y también usaré WinSCP.

Básicamente los pasos son:
  • Para ello migraremos el disco único de 160GB a un raid 1 junto con el disco de 250GB.
  • Luego retiraremos el de 160GB dejando el raid 1 en modo degradado pero operativo
  • expandimos la capacidad del volumen
  • "convertiremos" el raid1 de (160+250) a un disco sencillo de 250GB.
Inicialmente tenemos lo siguiente. Un disco de 160GB con un volumen thick de 100GB.

   

Guardaremos el archivo /etc/config/raid.conf ya que posteriormente nos podremos aprovechar de su contenido.

Cita:[Global]
raidBitmap = 0x2
pd_5RX0XKZG_Raid_Bitmap = 0x2

[Remove]

[RAID_1]
uuid = cc9aae89:131a2508:95225540:4de12f03
id = 1
partNo = 3
aggreMember = no
readonly = no
legacy = no
version2 = yes
deviceName = /dev/md1
raidLevel = 1
internal = 1
mdBitmap = 0
chunkSize = 64
readAhead = 0
stripeCacheSize = 0
speedLimitMax = 0
speedLimitMin = 0
data_0 = 1, 5RX0XKZG
dataBitmap = 1


1-Creación del RAID 1

Introducimos el nuevo disco. Ojo, que no tenga ningún tipo de partición anterior y sobretodo que no sea de QNAP.
El sistema pitará, preparará y ya podemos usarlos para crear un raid 1 con una máxima capacidad como permita el disco mas pequeño.

Desde QTS veremos lo siguiente:
   

Ahora comenzamos el proceso de migración siguiendo los pasos de la siguiente imagen
   

Terminamos el asistente seleccionando el disco a agregar y aplicamos los cambios.
   

Se puede ver el estado del raid desde QTS y también desde consola con el comando
Cita:mdadm --query --detail /dev/md1

   

En la imagen vemos la partición inicial del raid es /dev/sda3 y por tanto el disco inicial es el /dev/sda
Que está reconstruyéndose (rebuilding) el /dev/sdb3 y que vamos a un 82%

Si queremos dar mayor prioridad a la reconstrucción, lo activaremos desde los menús tal como se muestra en la captura siguiente
   

Cuando haya terminado, la nas pitará de nuevo y desde QTS podemos ver el estado del raid1
   

o bien nuevamente desde la consola veremos el estado correcto del raid con
Cita:mdadm --query --detail /dev/md1

   

El archivo /etc/config/raid.conf contiene lo siguiente:
Cita:[Global]
raidBitmap = 0x2
pd_5RX0XKZG_Raid_Bitmap = 0x2
pd_50014EE000BCDBFA_Raid_Bitmap = 0x2

[Remove]

[RAID_1]
uuid = cc9aae89:131a2508:95225540:4de12f03
id = 1
partNo = 3
aggreMember = no
readonly = no
legacy = no
version2 = yes
deviceName = /dev/md1
raidLevel = 1
internal = 1
mdBitmap = 0
chunkSize = 0
readAhead = 4096
stripeCacheSize = 0
speedLimitMax = 0
speedLimitMin = 50000
data_0 = 1, 5RX0XKZG
data_1 = 2, 50014EE000BCDBFA
dataBitmap = 3
scrubStatus = 1
eventSkipped = 0
eventCompleted = 1
degradedCnt = 0

2-Retiramos el disco inicial

Sin apagar la máquina retiramos el disco.
Podemos hacerlo manualmente los que tengan bahías de extracción en caliente.
Pero los que no las tengan pueden usar la consola con los siguientes comandos que afectan al primer disco (sda):
Cita:mdadm /dev/md1 --fail /dev/sda3
mdadm /dev/md1 --remove /dev/sda3

   

La nas pitará nuevamente y encenderá el led de alarma. En mi caso por el modelo de nas que tengo, se enciende en rojo el del de la primera bahía.
Desde QTS lo veremos tal como se muestra en la siguiente captura
   

3-Expansión de tamaño del volumen

Ahora mismo tenemos asignados 118,39 GB y una capacidad de 139,55. Es decir QTS aunque reconoce el disco como e 232,89 GB, no deja expandirlo.
Vamos a la consola y vamos a ver datos de la partición sdb3.
Ejecutamos  lo siguiente
Cita:mdadm -E /dev/sdb3

   

Para expandirlo el raid hay que calcular el tamaño.
En nuestro caso la obtenemos de multiplicar 223.39 GiB por 1.000.000.

Ejecutamos la siguiente orden para ampliar el tamaño
Cita:mdadm --grow /dev/md1 --size=223390000

   

La nas pitará. 
Ejecutamos de nuevo para ver la información de la partición
Cita:mdadm -E /dev/sdb3

   

Vemos que las cantidades del disco y del raid son coincidentes a 213,04 GB

Desde QTS veremos lo siguiente:

   

Es decir, todavía se ve la unidad de la bahía1 que retiramos.

4-Reducimos el RAID 1 a disco simple.

Ahora apagamos la nas y retiramos físicamente el disco de la primera bahía.

La iniciamos de nuevo y antes de "eliminar" el disco de la bahía 1 hay que exandir el tamaño del volumen.
Vamos al administrador de almacenamiento. seleccionamos el volumen , administrar y lo expandimos, según se ve en la captura de pantalla
   

Si pedimos información del raid
Cita:mdadm --query --detail /dev/md1
veremos que ahora el disco es /dev/sda

Para reducir el número de miembros del raid 1, ejecutaremos el siguiente comando
Cita:mdadm --grow /dev/md1 --raid-devices=1 --force

Ahora editaremos el archivo /etc/config/raid.conf. 
Su contenido actual es el siguiente
Cita:[Global]
raidBitmap = 0x2
pd_50014EE000BCDBFA_Raid_Bitmap = 0x2

[Remove]
0x00000001 = 0x2

[RAID_1]
uuid = cc9aae89:131a2508:95225540:4de12f03
id = 1
partNo = 3
aggreMember = no
readonly = no
legacy = no
version2 = yes
deviceName = /dev/md1
raidLevel = 1
internal = 1
mdBitmap = 0
chunkSize = 0
readAhead = 4096
stripeCacheSize = 0
speedLimitMax = 0
speedLimitMin = 50000
data_0 = 1, (REMOVED)
data_1 = 2, 50014EE000BCDBFA
dataBitmap = 3
scrubStatus = 1
eventSkipped = 0
eventCompleted = 1
degradedCnt = 0


Lo editaremos para dejarlo como si tuviésemos un disco.
Si queremos podemos poner el contenido del primero que guardamos cambiando el número de serie del disco duro en las dos líneas en las que aparece.
Tras la edición quedaría de la siguiente forma. He puesto en negrita lo que ha cambiado respecto al fichero original de cuando estaba el disco inicial.

Cita:[Global]
raidBitmap = 0x2
pd_50014EE000BCDBFA_Raid_Bitmap = 0x2

[Remove]

[RAID_1]
uuid = cc9aae89:131a2508:95225540:4de12f03
id = 1
partNo = 3
aggreMember = no
readonly = no
legacy = no
version2 = yes
deviceName = /dev/md1
raidLevel = 1
internal = 1
mdBitmap = 0
chunkSize = 64
readAhead = 0
stripeCacheSize = 0
speedLimitMax = 0
speedLimitMin = 0
data_0 = 1, 50014EE000BCDBFA
dataBitmap = 1

Una vez actualizado y guardado el archivo, apagamos la nas y movemos el disco de la bahía 2 a la bahía 1.

Encendemos y ya está la nas como al inicio pero con un disco duro mas grande.


Todo lo anterior ha sido probado en una TS-469Pro con QTS 4.3.4, lo he probado varias veces y es algo que funciona, pero no puedo dar garantías de ello.

Siempre podemos usar el sistema oficial de Qnap de:
-backup de datos incluidos, bases de datos, de posibles programas que tengamos instalados y de la webs alojadas.
-backup de configuraciones de la nas y si es posible de los programa instalados
-instalación de un nuevo disco habiendo extraído el existente
-configuración de la nas desde un inicio (claves, carpetas compartidas, usuarios y claves,...)
-vuelta de datos básicos (ficheros de datos)
-reinstalación de aplicaciones
-recuperación de sus configuraciones y datos

Y aun teniendo cuidado, es fácil que nos olvidemos de algo.

A modo preventivo, podemos guardar la configuración de la nas desde "Panel de Control", "copia de seguridad" y mientras no borremos el disco original, podemos volver al estado de inicio.
Para ello reiniciaríamos la máquina totalmente tal como vino de fábrica, recuperamos la configuración anterior, apagamos y dejamos el disco original en la bahía primera.
Arrancamos y ya tenemos todo como al inicio.


Como siempre, si veis alguna errata me avisáis por privado para corregirlo.
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny y TS-453Be)
Responder
#2
muy buen tuto.
gracias por la info.
un saludo
Responder
#3
Gracias

Me ha costado bastante tiempo el hacerlo porque no hay documentación sobre ello.

Lo he hecho sobretodo pensando en los usuarios de doble bahía, que se pillan los dedos con la elección del tamaño del disco.
Generalmente se tiende a elegirlo pequeño por nuestras expectativas o por precio.
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny y TS-453Be)
Responder
#4
Que grande eres Ganekogorta!!!!! Gracias
Responder




Usuarios navegando en este tema: 1 invitado(s)