Criando VMs no DaDesktop usando o Virt Manager

Introdução

Frequentemente, ao preparar um curso, é útil virtualizar um servidor dentro do DaDesktop, e talvez virtualizar também uma ou duas máquinas clientes da mesma forma, usando o mesmo sistema operacional ou uma combinação de Windows/Linux.

A execução de 'VMs Aninhadas' pode ser feita usando o Virt Manager ou o VirtualBox com o Vagrant opcionalmente quando estiver usando Linux, ou o VirtualBox se estiver usando o Windows 10 como máquina DaDesktop.

DD Machines Nested Virt

Após extensos testes, nossa preferência sugerida é usar o Virt Manager, pois há alguns bugs se usar o VirtualBox; portanto, atualmente, não sugerimos o uso do VirtualBox dessa forma.

O aplicativo VirtManager usa a biblioteca libvirt para fornecer serviços de gerenciamento de máquinas virtuais. Ele tem uma interface de desktop que ajuda a criar, excluir e gerenciar várias máquinas virtuais. É usado principalmente para VMs KVM, mas também pode oferecer suporte a outros hipervisores, como Xen e LXC.

O Virt Manager também funciona muito bem com o Vagrant, simplesmente  :-          

apt install vagrant-libvirt

Vale a pena notar que há menos boxes do Vagrant disponíveis usando libvirt/kvm em comparação com o VirtualBox, mas elas podem ser facilmente convertidas para funcionar com o libvirt, como mostrado aqui: -

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

A interface do usuário fornece uma visão resumida de todas as VMs, seu status, uso de CPU, gráfico de desempenho AO VIVO das VMs em execução e estatísticas de utilização de recursos.

Se você ainda não usou o Virt Manager antes, ele é muito semelhante ao VirtualBox, mas com algumas diferenças importantes, conforme descrito abaixo.

Este é um bom guia sobre o uso do virt-manager no Ubuntu Linux - https://www.debugpoint.com/virt-manager/

 

Por que devo usar o Virt Manager em vez do Virtualbox?

Vantagens
  1. O desempenho é muito melhor - o Virt Manager usa drivers VirtIO para armazenamento, rede e gráficos, o que proporciona um desempenho muito melhor. Os drivers Virtio são drivers de dispositivos paravirtualizados do KVM, disponíveis para máquinas virtuais convidadas Linux e Windows executando em hosts KVM. O pacote virtio oferece suporte a dispositivos de bloco (armazenamento) e controladores de interface de rede, além de gráficos. Os drivers VirtIO são de código aberto, portanto, facilmente instalados se não estiverem pré-instalados na sua distribuição Linux.
  2. Mais opções de configuração disponíveis
  3. Funciona bem com o Vagrant
  4. Algumas partes do VirtualBox não são totalmente de código aberto
  5. O Virt Manager não precisa de recompilações de módulo sempre que uma nova atualização do kernel é feita, como é o caso do VirtualBox.
  6. O VirtualBox às vezes é conhecido por quebrar quando uma nova atualização do kernel é necessária.
Desvantagens
  1. Pode-se dizer que o VirtualBox tem uma curva de aprendizado ligeiramente mais curta
  2. Configurar a 'Rede de Host' em vez de NAT é mais fácil no VirtualBox; no entanto, o NAT funciona para a maioria dos casos de uso de rede com bastante facilidade em ambos os sistemas.
  3. O VirtualBox está disponível em muitas plataformas, no entanto, o Virt Manager está disponível apenas no Linux


No geral, achamos que, para executar servidores dentro de uma máquina DaDesktop, o Virt Manager é o preferido.

 

Instalação

Como o libvirt está sempre melhorando, use sempre a versão mais recente do Ubuntu ou Debian não LTS.

Instalação do kvm, virt-manager. Estas são notas de instalação muito breves; no entanto, siga um guia atualizado para o seu sistema operacional DaDesktop preferido. Este é um guia https://www.debugpoint.com/virt-manager/

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

Reinicie a máquina DaDesktop, execute o Virt Manager no menu Aplicativos

 

Configuração

  1. Como faço para importar ou converter máquinas virtuais? Embora seja fácil criar VMs de acordo com seus requisitos de sistema operacional e especificações muito facilmente, frequentemente, para configurações mais complicadas, é preferível importar uma configuração de VM existente de um determinado servidor ou appliance. Muitas vezes, estas são fornecidas como imagens VMDK que podem ser adicionadas diretamente ao Virt Manager, embora não esteja claro se isso é realmente possível com a versão atual. Para imagens de servidor do VirtualBox, estas não podem ser importadas (adicionadas) diretamente ao Virt Manager, mas podem ser facilmente exportadas para outros formatos de virtualização, como o Formato de Virtualização Aberto (.OVF), que o Virt Manager pode importar facilmente. Caso contrário, você poderia usar o VmWare Convertor, se o tiver, ou o Virt-V2V em vez disso https://www.redhat.com/en/blog/importing-vms-kvm-virt-v2v. O Qemu-convert também é uma ótima ferramenta de código aberto que permite uma conversão fácil entre diferentes formatos de máquina virtual.
    Para converter do VirtualBox para o formato KVM do Virt Manager, siga estas instruções https://ostechnix.com/how-to-migrate-virtualbox-vms-into-kvm-vms-in-linux/
  2. Melhor maneira de importar arquivos grandes dentro do standalone. Recentemente, foi adicionado um meio para enviar arquivos facilmente da sua máquina para dentro da sua máquina DaDesktop.

    Caso contrário, considere usar uma ferramenta de arquivos em nuvem, como Google Drive, Microsoft 365, etc. Estes podem então ser acessados fazendo login na ferramenta dentro da máquina DaDesktop.

  3. Ao importar outras máquinas virtuais, especialmente de outros formatos, frequentemente você precisará alterar os tipos de gráficos e/ou disco. Uma das melhores coisas sobre o Virt Manager é que ele inclui um suporte realmente excelente para drivers VirtIO. Estes são drivers totalmente virtualizados de código aberto que fornecem um desempenho muito melhor em comparação com os drivers originais de disco, rede ou gráficos, e estão disponíveis para quase todos os sistemas operacionais, incluindo excelente suporte para máquinas convidadas Windows 10. Se o seu SO convidado os suporta, geralmente são a opção preferida para compatibilidade e desempenho ao usar o VIrt Manager (KVM). https://wiki.archlinux.org/title/Libvirt
  4. Configurações ideais para máquinas virtuais usando o Virt Manager Os drivers VirtIO estão incluídos em quase todos os sistemas operacionais de servidor de código aberto atualmente e podem ser instalados facilmente no Windows. Geralmente, os melhores drivers são o virtio, mas em alguns casos você pode precisar usar um dos muitos outros tipos. Geralmente, o NAT é suficiente para a maioria dos casos de rede, a menos que você precise de uma configuração mais complicada, onde a rede em ponte do host pode ser necessária; no entanto, isso geralmente é mais complicado de fazer funcionar facilmente. 
    https://wiki.manjaro.org/index.php?title=Virt-manager É um ótimo guia inicial aqui.
    Executar o Windows  requer algumas etapas extras e exigirá a integração dos drivers VirtIO para permitir que o ISO do Windows 10 inicialize.
    Ao escolher o formato do disco rígido, para velocidade, os arquivos .raw são os melhores, a menos que sejam necessários snapshots; se for o caso, use o formato qcow2, mas este é um pouco mais lento.
  5. Embora o Wayland funcione bem na maioria dos casos como gerenciador de exibição, aconselhamos que você continue usando o X11 por enquanto. Dito isso, pode valer a pena experimentar o Wayland em sua própria configuração específica, e as distros estão recebendo melhor suporte para o Wayland o tempo todo.
  6. Não se preocupe em usar o ksm, pois embora ele funcione aninhado e no Virt Manager, na prática faz pouca diferença.
  7. Suporte Técnico está disponível se necessário ao converter imagens de disco para funcionar com o Virt Manager e, adicionalmente, configurar o uso do Virt Manager para cursos DaDesktop.
  8. Onde os arquivos de imagem de disco estão localizados no sistema de arquivos? O Virt Manager usa o seguinte local para armazenar arquivos de imagem; no entanto, isso é configurável e outros locais podem ser usados se preferir.

    /var/lib/libvirt/images