Creación de máquinas virtuales dentro de DaDesktop usando Virt Manager

Introducción

A menudo, al preparar un curso, resulta útil virtualizar un servidor dentro de DaDesktop y, posiblemente, también una o dos máquinas cliente de la misma manera, ya sea usando el mismo sistema operativo o una combinación de Windows y Linux.

Ejecutar 'máquinas virtuales anidadas' se puede hacer ya sea con Virt Manager o VirtualBox, con vagrant de forma opcional si usas Linux; o bien con VirtualBox si usas Windows 10 como la máquina DaDesktop.

DD Machines Nested Virt

Después de realizar pruebas exhaustivas, nuestra preferencia sugerida es usar Virt Manager, ya que hay un par de fallos si se utiliza VirtualBox; por lo tanto, actualmente no sugerimos el uso de VirtualBox de esta manera.

La aplicación VirtManager emplea la biblioteca libvirt para ofrecer servicios de gestión de máquinas virtuales. Cuenta con una interfaz de escritorio que ayuda a crear, eliminar y administrar múltiples máquinas virtuales. Se usa principalmente para MV KVM, pero también puede dar soporte a otros hipervisores como Xen y LXC.

Virt Manager también funciona muy bien con Vagrant, simplemente  :-          

apt install vagrant-libvirt

Vale la pena señalar que hay menos boxes de Vagrant disponibles usando libvirt/kvm en comparación con VirtualBox, pero estas pueden convertirse fácilmente para funcionar con libvirt como se muestra aquí :-

https://medium.com/@gamunu/use-vagrant-with-libvirt-unsupported-boxes-12e719d71e8e
 

La interfaz de usuario ofrece una vista resumida de todas las MV, su estado, uso de CPU, gráfico de rendimiento EN VIVO de las MV en ejecución y estadísticas de utilización de recursos.

Si no has usado Virt Manager antes, es muy similar a VirtualBox pero con algunas diferencias importantes que se describen a continuación.

Esta es una guía decente sobre el uso de virt-manager en Ubuntu Linux - https://www.debugpoint.com/virt-manager/

 

¿Por qué debería usar Virt Manager en lugar de Virtualbox?

Ventajas
  1. El rendimiento es mucho mejor: Virt Manager utiliza controladores VirtIO para almacenamiento, redes y gráficos, lo que proporciona un rendimiento muy superior. Los controladores virtio son los controladores de dispositivos paravirtualizados de KVM, disponibles para máquinas virtuales invitadas con Linux y Windows que se ejecutan en anfitriones KVM. El paquete virtio da soporte a dispositivos de bloque (almacenamiento), controladores de interfaz de red y gráficos. Los controladores VirtIO son de código abierto, por lo que se instalan fácilmente si no vienen preinstalados en tu distribución de Linux.
  2. Más opciones de configuración disponibles
  3. Funciona bien con Vagrant
  4. Algunas partes de VirtualBox no son completamente de código abierto
  5. Virt Manager no necesita recompilaciones de módulos cada vez que se realiza una actualización del kernel, como sí ocurre con VirtualBox.
  6. Se sabe que VirtualBox a veces falla cuando se requiere una nueva actualización del kernel.
Desventajas
  1. Podría decirse que VirtualBox tiene una curva de aprendizaje ligeramente más corta
  2. Configurar 'red de anfitrión' en lugar de NAT es más fácil en VirtualBox; sin embargo, NAT funciona para la mayoría de los casos de uso de red con bastante facilidad en ambos sistemas.
  3. VirtualBox está disponible en muchas plataformas, pero Virt Manager solo está disponible en Linux


En general, encontramos que para ejecutar servidores dentro de una máquina DaDesktop, se prefiere Virt Manager.

 

Instalación

Dado que libvirt mejora constantemente, utiliza siempre la última versión no LTS de Ubuntu o Debian.

Instalación de kvm, virt-manager. Estas son notas de instalación muy breves; sin embargo, sigue una guía actualizada para tu sistema operativo DaDesktop preferido. Esta es una guía https://www.debugpoint.com/virt-manager/

sudo apt install virt-manager
sudo adduser student libvirt
sudo systemctl restart libvirtd

Reinicia la máquina DaDesktop, ejecuta Virt Manager desde el menú Aplicaciones

 

Configuración

  1. ¿Cómo importo o convierto máquinas virtuales? Si bien es fácil crear máquinas virtuales adaptadas a los requisitos de tu sistema operativo y especificaciones, a menudo, para configuraciones más complejas, se prefiere importar una configuración de MV existente de un servidor o dispositivo particular. A menudo, estos se suministran como imágenes VMDK que pueden añadirse directamente a Virt Manager, aunque no está claro que esto sea posible con la versión actual. Las imágenes de servidor de Virtual Box no se pueden importar (añadir) directamente a Virt Manager, pero pueden exportarse fácilmente a otros formatos de virtualización como el Formato de Virtualización Abierto (.OVF), que Virt Manager puede importar sin problemas. De lo contrario, podrías usar VmWare Convertor si lo tienes, o Virt-V2V en su lugar https://www.redhat.com/en/blog/importing-vms-kvm-virt-v2v. Qemu-convert también es una gran herramienta de código abierto que permite una fácil conversión entre diferentes formatos de máquinas virtuales.
    Para convertir de VirtualBox a formato KVM de Virt Manager sigue estas instrucciones https://ostechnix.com/how-to-migrate-virtualbox-vms-into-kvm-vms-in-linux/
  2. La mejor manera de importar archivos grandes en modo independiente. Recientemente, se ha añadido un medio para subir archivos fácilmente desde tu máquina al interior de tu máquina DaDesktop.

    De lo contrario, considera usar una herramienta de archivos en la nube como Google Drive, Microsoft 365, etc. A estas se puede acceder iniciando sesión en la herramienta dentro de la máquina DaDesktop.

  3. Al importar otras máquinas virtuales, especialmente de otros formatos, a menudo necesitarás cambiar los tipos de gráficos y/o de disco. Una de las mejores cosas de Virt Manager es que incluye un soporte realmente excelente para los controladores VirtIO. Estos son controladores de código abierto completamente virtualizados que ofrecen un rendimiento mucho mejor en comparación con los controladores de disco, red o gráficos originales, y están disponibles para casi todos los sistemas operativos, incluido un excelente soporte para máquinas invitadas con Windows 10. Si tu sistema operativo invitado los admite, estos suelen ser la opción preferida por compatibilidad y rendimiento al usar Virt Manager (KVM). https://wiki.archlinux.org/title/Libvirt
  4. Configuraciones óptimas para máquinas virtuales usando Virt Manager Los controladores VirtIO están incluidos en casi todos los sistemas operativos de servidor de código abierto hoy en día, y pueden instalarse fácilmente en Windows. Generalmente, los mejores controladores son los virtio, pero en algunos casos puede que necesites usar uno de los muchos otros tipos. Por lo general, NAT es suficiente para la mayoría de los casos de red, a menos que requieras una configuración más compleja donde se pueda necesitar una red de anfitrión en puente; sin embargo, esto suele ser más complicado de hacer funcionar fácilmente. 
    https://wiki.manjaro.org/index.php?title=Virt-manager Es una gran guía de inicio aquí.
    Ejecutar Windows requiere algunos pasos adicionales, y necesitará la integración de controladores VirtIO para permitir que la ISO de Windows 10 arranque.
    Al elegir el formato del disco duro, para velocidad, los archivos .raw son los mejores a menos que se requieran instantáneas; si es así, usa el formato qcow2, pero es un poco más lento.
  5. Aunque Wayland funciona bien para la mayoría de los casos como gestor de pantalla, aconsejamos que sigas usando X11 por ahora. Dicho esto, puede valer la pena probar Wayland en tu propia configuración particular, y las distribuciones están obteniendo un mejor soporte para Wayland todo el tiempo.
  6. No te molestes en usar ksm, ya que aunque funciona anidado y en Virt Manager, en la práctica marca poca diferencia.
  7. Soporte Técnico está disponible si se requiere al convertir imágenes de disco para trabajar con Virt Manager, y adicionalmente para la configuración del uso de Virt Manager para cursos de DaDesktop.
  8. ¿Dónde se ubican los archivos de imagen de disco dentro del sistema de archivos? Virt Manager utiliza la siguiente ubicación para almacenar archivos de imagen; sin embargo, esto es configurable y se pueden usar otras ubicaciones si se prefiere.

    /var/lib/libvirt/images