Logo
You
Code

KVM mediante virsh

Autor YouCode - http://www.youcode.com.ar/virtualizacion/kvm-mediante-virsh-322

Se explican de manera rápida los comandos de gestión de las máquinas virtuales KVM.

Conexión de virsh


La conexión al servidor KVM de máquinas virtuales utilizando la interfaz de administración de línea de comando virsh puede realizarse de manera local como se muestra a continuación.
$ virsh -c qemu:///system
O de manera remota a través de la red de datos. En este caso es necesario especificar la dirección IP o nombre FQDN del servidor de máquinas virtuales. Es preferible utilizar adicionalmente el servicio de SSH para garantizar la seguridad de la información transmitida.
$ virsh -c qemu+ssh://SERVIDOR/system

Métodos de ejecución de los comandos virsh


Los comandos de la interfaz de administración virsh pueden ejecutarse directamente en ella como se muestran a continuación en esta sección, para esto se debe realizar una conexión previa con la consola.

Por ejemplo:
$ virsh -c qemu+ssh://SERVIDOR/system

    virsh # start DOMINIO
Una forma mas rápida es obviando el paso de la conexión como se muestra a continuación. Esta modalidad es útil si sólo se desea ejecutar un unico comando en la consola virsh.
$ virsh -c qemu+ssh://SERVIDOR/system start DOMINIO

Listar las máquinas virtuales

Este procedimiento permite listar las máquinas virtuales que se encuentren activas en el servidor.
virsh # list
El modificador --inactive permite listar únicamente las máquinas virtuales apagadas.
virsh # list --inactive
El modificador --all permite listar las máquinas registradas en el servidor independiente de su estado de ejecución.
virsh # list --all

Iniciar a una máquina virtual


Para iniciar la ejecución de una máquina virtual se debe utilizar la opción start y el nombre de la misma (dominio).
virsh # start DOMINIO

Apagar a una máquina virtual


La opción shutdown envía un mensaje de apagado (limpio) al sistema operativo. Es el método preferido para apagar las máquinas virtuales sin correr riesgos de pérdidas o corrupción de las mismas.
virsh # shutdown DOMINIO
En caso de requerirse un apagado urgente (forzado) puede utilizarse la opción destroy que equivale a desconectar el cable de alimentación eléctrico de la máquina.
virsh # destroy DOMINIO

Inicio automático de máquinas virtuales


Para configurar a una máquina virtual para que se inicie automáticamente tan pronto como el servicio KVM se encuentre disponible es necesario utilizar la opción autostart.
virsh # autostart DOMINIO

Reiniciar una máquina virtual


Para reiniciar una máquina virtual actualmente en ejecución puede utilizarse la combinación de opciones shutdown/start o puede utilizarse la opción resumida reboot.
virsh # reboot DOMINIO

Registrar una máquina virtual


Es posible registrar a una nueva máquina virtual si de esta se cuenta con el archivo de especificación (comúnmente bajo/etc/libvirt/qemu/) y con las imágenes de sus discos duros (según corresponda). Para hacer esto es necesario utilizar la opción define.
virsh # define DOMINIO
Por defecto se espera que el achivo XML con la especificación de la máquina virtual tenga igual nombre que el dominio con la extensión .xml. Si desea utilizarse un nombre diferente al del archivo puede utilizarse el modificador --file para especificar su ruta.

Obtener especificación actual de una máquina virtual


Para obtener la especificación actual (opciones de configuración utilizadas) de una máquina virtual registrada en el servidor se debe utilizar la opción dumpxml.
virsh # dumpxml DOMINIO

Eliminar una máquina virtual


Para remover el registro de una máquina virtual en el servidor se debe utilizar la opción undefine, esta eliminar el archivo de especificación de la máquina virtual ubicado por defecto bajo /etc/libvirt/qemu/.
virsh # undefine DOMINIO
Este procedimiento no remueve las imágenes de los discos duros asociados a la máquina virtual eliminada. Si se desea hacer esto automáticamente se deberá incluír el modificador --remove-all-storage.

Suspender una máquina virtual


Para suspender temporalmente a una máquina virtual en ejecución se debe utilizar la opción suspend.
virsh # suspend DOMINIO

Despertar una máquina virtual


Para despertar a una máquina virtual que se encuentra temporalmente suspendida se debe utilizar la opción resume.
virsh # resume DOMINIO

Guardar el estado de una máquina virtual


Es posible guardar el estado actual (snapshot) de una máquina virtual para poder volver a trabajar con él posteriormente. Para almacenar este estado es necesario utilizar la opción save especificando una ubicación para su información.
virsh # save DOMINIO /ruta/para/SNAPSHOT

Restaurar el estado de una máquina virtual


Es posible restaurar el estado (snapshot) de una máquina virtual guardado previamente para continuar con su uso. Para recuperar este estado es necesario utilizar la opción restore especificando la ruta en donde este fue almacenado.
virsh # restore /ruta/para/SNAPSHOT

Montar un sistema de archivos en una máquina virtual


Para montar un sistema de archivos del servidor de máquinas virtuales (incluyendo imágenes ISO) en una máquina virtual se debe utilizar la opción attach-disk especificando su ruta de orígen (anfitrión) y su punto de montaje (invitado).
virsh # attach-disk DOMINIO /ruta/imagen.iso /media/MONTAJE

Desmontar un sistema de archivos de una máquina virtual

virsh # detach-disk DOMINIO DISPOSITIVO

Para desmontar un sistema de archivos externo de una máquina virtual se debe utilizar la opción detach-disk especificando el dispositivo a desmontarse.
http://www.youcode.com.ar/virtualizacion/kvm-mediante-virsh-322