Ampliación en LVM con KVM en caliente

  Ya se ha visto en alguna entrada anterior el modo de crear silos lógicos en KVM, y volúmenes lógicos durante una instalación de Linux.
  Dichos volúmenes pueden expandirse si la máquina virtual está apagada, pero también es posible hacerlo con ella funcionando si se tiene cierto cuidado.
  Este tipo de operaciones, a pesar de ser realizadas mediante un programa, necesitan tener el mayor grado de precisión posible porque un fallo en alguno de sus pasos podría ser desastroso.
  El proceso de ampliación del LVM en caliente requiere trabajar tanto en la máquina física como en la máquina virtual donde este se aloja.
  Para ejemplificar la siguiente explicación se empleará el sistema operativo Debian 9 en ambas máquinas informáticas (la física y la virtual).

AMPLIACIÓN DESDE EL EQUIPO FÍSICO


 Con el disco virtual de KVM encendido, se comprueban las características del grupo de volúmenes (en este caso “VG”) mediante el comando lvs (anteponiendo sudo si no se está como administrador), desde fuera de la máquina virtual.

  A continuación, se empleará el comando lvresize  -L <nueva capacidad aumentada> <ruta a disco virtual> (anteponiendo sudo si no se está como administrador) (en este ejemplo, la nueva capacidad será “40G”, y la ruta es “/dev/libvirt_lvm/vol1”).
  Puede comprobarse el cambio con lvs (anteponiendo sudo si no se está como administrador).
    Acto seguido, se debe afianzar el cambio mediante el comando virsh blockresize --path <ruta al disco virtual> --size <nueva capacidad> <nombre del volumen> (anteponiendo sudo si no se está como administrador); por ejemplo, para el aumento de capacidad anterior, suponiendo que el volumen lógico  se llame “debian_prueba”, el comando sería “sudo virsh blockresize --path /dev/libvirt_lvm/vol1 --size 40G debian_prueba”.

  La comprobación puede hacerse mediante el comando lvs (anteponiendo sudo si no se está como administrador).


AMPLIACIÓN DESDE LA MÁQUINA VIRTUAL

  Una vez extendido el disco virtual donde se encuentra el grupo de volúmenes, se debe expandir una de las particiones físicas del primero utilizando el comando fdisk <ruta del disco> (anteponiendo sudo si no se está como administrador)  (en este ejemplo, el disco virtual será “/dev/vda”).
    Primeramente, hay que saber cuál es el sector final de las particiones existentes, por lo que se escribirá la opción “p” para ver dichas particiones.
  A continuación, se escribirá la opción “n” para comenzar a crear la nueva partición. Se elige la opción “p” (primaria) y se escribe el número de partición. Seguidamente, se escribe el bit del primer cilindro (a partir del siguiente bit al del final del cilindro anterior) y el del último cilindro (aquí se pueden añadir más cilindros o indicar el tamaño de la partición en K, M o G). Para finalizar, se debe escribir “w”, lo que escribirá la tabla en el disco y saldrá del programa.
  Luego, se debe emplear el programa Partprobe (si no está instalado, se debe instalar; también es conveniente instalar Kpartx y Parted) y utilizar, como administrador, el comando partprobe <ruta del disco> para indicar al kernel que reconozca la nueva partición.
  Acto seguido se formateará la nueva partición en formato ext4 utilizando, como administrador, el comando mkfs.ext4 <ruta del disco> (por ejemplo “mkfs.ext4 /dev/vda4”).
  Si la nueva partición no se monta automáticamente, puede montarse con el comando mount <ruta del disco> usado como administrador.
  Con la partición física creada, se empleará, como administrador, el comando pvresize <ruta del disco> para asegurar los cambios de esta (ejemplo: “pvresize /dev/vda4”).
 Después, se utilizará el comando lvresize -L <nuevo tamaño de volumen> <ruta de volumen>  (por ejemplo, “lvresize -L 40G /dev/libvirt_lvm/vol1”).
  Finalmente, se empleará, como administrador, el comando resize2fs <ruta del disco> (por ejemplo “resize2fs /dev/vda4”) para ajustar el sistema de archivos y que utilice el nuevo espacio creado. 
 Pueden comprobarse los cambios con los comandos df -hP, df -hT o lsblk.
  El siguiente paso es añadir el nuevo volumen lógico al grupo de volúmenes, para lo que se utiliza el comando vgextend <nombre del grupo de volúmenes> <ruta del disco> (por ejemplo, “vgextend vg /dev/vda4”). El resultado puede verse mediante el comando pvs (anteponiendo “sudo” si no se está como administrador).

  Finalmente, para ampliar un volumen lógico dentro de un grupo de volúmenes con suficiente espacio libre para ello, se utilizará, como administrador, el comando lvextend -L +<nuevo tamaño (en megas, gigas o teras)> -r <ruta del volumen lógico> (ejemplos “lvextend -L +2G -r /dev/vg/vg-var”, “lvextend -L +6G -r /dev/mapper/vg-vg—home”). Puede comprobarse el resultado utilizando como administrador los comandos pvs o vgdisplay.

  Aguardo que esta entrada haya sido del gusto del lector; de ser así, espero que este la comente y/o la comparta, por favor.

No hay comentarios:

Publicar un comentario

Deje aquí su comentario, si no puede comentar, pruebe a hacerlo desde otro navegador de red u otro equipo.