Sustituir disco con LVM
Tenemos un disco en el sistema, que queremos sustituir. Podríamos hacerlo con dd, pero como está siendo usado bajo LVM, vamos a hacer uso de una de sus funcionalidades para mover discos:
Disco antiguo: /dev/sda
Disco nuevo: /dev/sdb
Volume Group: VGMysql
Inicializar disco:
Inicializamos el nuevo disco para ser gestionado por LVM.
pvcreate /dev/sda
Ampliar el volume group:
Ese nuevo disco inicializado, lo añadimos al volume group donde se encuentra el disco que queremos sustituir.
vgextend VGMysql /dev/sda
Movers datos:
Con pvmove movemos los datos de un disco a otro:
pvmove /dev/sda /dev/sdb
Este paso tardará mas o menos, dependiendo del volumen de datos que tengamos que mover, nos irá indicando el progreso…
/dev/sda: Moved: 2,0%
/dev/sda: Moved: 4,5%
/dev/sda: Moved: 7,0%
/dev/sda: Moved: 9,4%
/dev/sda: Moved: 11,2%
…
/dev/sda: Moved: 91,4%
/dev/sda: Moved: 93,7%
/dev/sda: Moved: 96,1%
/dev/sda: Moved: 98,6%
/dev/sda: Moved: 100,0%
Borrar disco antiguo:
Mas que borrarlo, lo que hacemos es sacarlo del volume group, en este caso VGMysql.
vgreduce VGMysql /dev/sda
Comprobar:
Ya se ha movido el disco, no está de más comprobar que todo funciona correctamente. En mi caso, moví un disco de mysql porque se quedó pequeño. El cambio se hizo en caliente sobre un sistema en producción sin ninguna perdida de servicio.
Con pvscan, vemos el nuevo disco en el volume group:
pvscan
PV /dev/sdb VG VGMysql lvm2 [30,00 GB / 20,00 GB free]
Entro a mysql y hago algunas consultas para comprobar que todo funciona correctamente.
Extraer disco antiguo:
Una vez comprobado que todo funciona correctamente con el nuevo disco, podemos extraer el viejo disco del sistema sin problema (o desasignar en caso de que sea una LUN).
- None Found





