
Tengo 3 matrices RAID en mi servidor, asignadas a 2 PV en mi configuración lvm2.
apolo:~# pvs PV VG Fmt Attr PTamaño PLibre /dev/sda1 apollo lvm2 a- 3.64T 0 /dev/sda2 apollo lvm2 a- 1.14T 0 /dev/sdb apollo1 lvm2 a- 2.05T 0 apolo:~# lvs LV VG Attr LSize Origen Snap% Mover registro Copiar% lvol0 apolo -wi-ao 4.77T ling-ling apollo1 -wi-ao 895.41G lvol0 apollo1 -wi-ao 1.17T lvol1 apollo1 -wi-a- 32.00M
Quiero eliminar el "ling-ling" de LV para liberar algo de espacio, sin embargo, quiero expandir lvol0 con ese espacio libre, que reside en el otro VG.
¿Hay alguna forma en LVM de asignar un porcentaje de un PV a diferentes VG sin volver a particionar? La única solución que se me ocurre es reparticionar /dev/sdb pero preferiría no hacerlo, ya que se trata de un servidor activo.
Gracias :)
Respuesta1
No. Los VG consumen PV completos.
Respuesta2
Si desea dividir una unidad/LUN entre VG, deberá crear dos particiones y un PV en cada una. Esto tiene una serie de inconvenientes, uno de los cuales es que necesitarías destruir los PV y reparticionarlos para cambiar el diseño.
Respuesta3
Aparte de reparticionar el disco, no existe una forma limpia de obtener exactamente lo que desea.
Una solución rápida y sucia es crear un LV y usarlo como PV. Esto no es algo que se use mucho y, como tal, no se probó mucho, por lo que puede tener problemas, por ejemplo, con la activación en el arranque. Esto podría ser tan simple como:
vgextend apollo /dev/apollo1/ling-ling
Otra alternativa es usar vgmerge
y hacer un solo VG apollo:
vgmerge apollo apollo1
Debe actualizar cualquier enlace en fstab (si usa nombres de dispositivos y no ETIQUETA/UUID)