Cuando se trabaja con un host de máquinas virtuales headless (es decir, sin interfaz gráfica) generalmente se utiliza una herramienta de gestión gráfica desde una estación de trabajo remota. Sin embargo, a veces puede ser necesario trabajar directamente sobre el host, con las herramientas de línea de comandos disponibles. En este caso: virsh. Este artículo presenta un ejemplo simple sobre cómo crear una nueva imagen de disco virtual dentro de un pool de disco de libvirt.

virsh es la principal interfaz para gestionar dominios virsh. Se utiliza para crear, pausar, listar y detener dominios, entre muchas funcionalidades que provee.

El objetivo es crear una nueva imagen de disco para una máquina virtual.

El primer paso consiste en listar los pooles de disco disponibles, para saber en cual de ellos crearemos la nueva imagen:

[root@centos6 ~]# virsh pool-list
Name                 State      Autostart 
-----------------------------------------
default              active     yes       
ISO                  active     yes       

Un host puede estar conectado a varios pooles de disco de diferentes capacidades, velocidades, nivel de redundancia, etc. Es común que se utilicen pooles pequeños y rápidos para ser utilizados por los sistemas operativos, pooles con gran redundancia para alojar los datos, y pooles lentos pero de gran tamaño para backups. Algunos forman parte del mismo host (por ejemplo un dispositivo, partición o un simple directorio), mientras que otros son sistemas específicos de almacenamiento (storage) conectados de manera remota a través de redes de alta velocidad (fibra óptica).

Para obtener información de un pool en particular, se utiliza el subcomando pool-info:

[root@centos6 ~]# virsh pool-info default
Name:           default
UUID:           0de14377-cd3d-97ea-84fc-c355df5a9647
State:          running
Persistent:     yes
Autostart:      yes
Capacity:       9.84 GiB
Allocation:     5.07 GiB
Available:      4.77 GiB

[root@centos6 ~]# virsh pool-info ISO
Name:           ISO
UUID:           06b90732-5210-03fd-83f5-87bbfc7f2cbc
State:          running
Persistent:     yes
Autostart:      yes
Capacity:       98.43 GiB
Allocation:     63.06 GiB
Available:      35.37 GiB

Si se requiere obtener mayor información sobre un determinado pool, se puede volcar la definición en formato XML a través del subcomando pool-dumpxml.

Para crear un nuevo volumen (imagen de disco virtual) se debe especificar el pool destino, junto con el nombre, tamaño y formato:

[root@centos6 ~]# virsh vol-create-as ISO server03.raw 8G --format raw
Vol server03.raw created

Se ha creado el volumen de nombre "server03.raw" de 8 GB de tamaño, dentro del pool "ISO". El formato utilizado es raw (se puede optar entre "raw", "bochs", "qcow", "qcow2", "vmdk", "qed").

Si se desea eliminar un volume, se debe utilizar el subcomando vol-delete, junto con el nombre y pool donde se encuentra:

[root@centos6 ~]# virsh vol-delete --pool ISO server03.raw
Vol server03.raw deleted

Referencias


Tal vez pueda interesarte


Compartí este artículo