it-swarm-pt.tech

O VirtualBox e o KVM podem ser executados lado a lado?

Eu tenho uma instância virtual KVM em execução na minha máquina. Eu instalei o VirtualBox; mas, quando tentei iniciar o VirtualBox VM máquina, recebi o seguinte erro:

VERR_VMX_IN_VMX_ROOT_MODE

Eu procurei com base nesta mensagem de erro e o problema é que KVM já está instalado.

Eu sei que eu posso alternar entre eles, removendo alguns módulos, em seguida, use o VirtualBox. No entanto, minha pergunta é como fazê-los funcionar simultaneamente?

5
Maythux

Sua única opção real é uma questão de ordem:

Se você iniciar e abrir a máquina VirtualBox, espere que ela termine de inicializar e então inicie a máquina KVM (do virt-manager ou virsh) ela deve funcionar corretamente. Inicializar as máquinas na ordem oposta irá não funcionar.

Carregar e descarregar os módulos kvm e kvm_intel satisfará os requisitos do VirtualBox. Um método baseado em script mais suave para isso pode ser encontrado aqui .

EDIT: esta solução (ordem de inicialização) não parece mais funcionar para mim, desde a atualização para o Ubuntu 13.10. YMMV.

7
agc93

Você não pode fazê-los trabalhar juntos. Ambos precisam acessar os recursos de virtualização da CPU, mas isso não foi projetado para ser usado por mais de um hipervisor de uma só vez.

Você poderia tentar desativar o suporte VT-X do Virtualbox para que ele não tente usar a virtualização de hardware. Edite as configurações da máquina virtual, na guia do sistema, encontre a caixa de seleção "enable vt-x/AMD-v" e desmarque-a. Eu não prometo que funcionará, e mesmo que isso aconteça, ele usará a virtualização de software para o VirtualBox, para que suas VMs sejam mais lentas.

Se for possível, recomendo vivamente que escolha apenas um hipervisor e utilize-o para todas as suas VMs.

5
roadmr

Como já foi dito nas respostas acima,

No ambiente Linux, instalar o Qemu/KVM, a estação de trabalho VMware e o Virtualbox NO MESMO HYPERVISOR é possível.

Então o problema IS NÃO está em INSTALAÇÃO

Uma vez que todos eles estejam instalados, você tem isto:

lsmod | egrep 'vm[nmw]|vbox|kvm'

    vboxpci                28672  0
    vboxnetadp             28672  0
    vboxnetflt             32768  0
    vboxdrv               483328  3 vboxnetadp,vboxnetflt,vboxpci
    vmnet                  61440  13
    vmw_vsock_vmci_transport    32768  0
    vmw_vmci               81920  1 vmw_vsock_vmci_transport
    vmmon                 102400  0
    vsock                  40960  1 vmw_vsock_vmci_transport
    kvm_AMD                94208  9
    kvm                   700416  1 kvm_AMD
    irqbypass              16384  1 kvm

===

Todas as linhas incluindo kvm -> usadas pelo Qemu/KVM

Todas as linhas, incluindo vbox -> usado pelo VirtualBox

Os outros pela VMware (veja:

ll /lib/vmware/modules/source/

     total 5460
     -rw-r--r--. 1 root root  870400 Mar 30 20:19 vmblock.tar
     -rw-r--r--. 1 root root 1341440 Mar 30 20:20 vmci.tar
     -rw-r--r--. 1 root root 1443840 Mar 30 20:20 vmmon.tar
     -rw-r--r--. 1 root root  768000 Mar 30 20:20 vmnet.tar
     -rw-r--r--. 1 root root 1136640 Mar 30 20:20 vsock.tar

para fonte: módulo compilado na instalação)

=======

E AGORA O USO DESTE:

AS SAID por roadmr (a segunda resposta acima) Apenas um pode usar Intel-VT ou AMD-V em um momento Se você iniciar algum uso do Qemu/KVM para uma máquina virtual de 64bits, então o VirtualBox no mesmo tempo NÃO PODE executar uma máquina de 64 bits, porque o VirtualBox REQUER a aceleração HW para VM de 64 bits.

Para dar alguma luz sobre a resposta por David Baird acima:

Com AMD Atlon X2 ou X4, ou AMD FX 8-core, ou com o Intel Core I5 ​​ou I7, (máquinas onde eu poderia fazer uma tentativa),

  ==>   VirtualBox 5.2.10

não é capaz de fazer rodar ao mesmo tempo no Linux, depois que o KVM bloqueou o acesso ao Intel-VT ou AMD-V e a Máquina Virtual extra de 64 bits !!!

enquanto

  ==>  VMware player or workstation 14.1

será, desde que você desmarque o uso Intel-VT ou AMD-V !!!

Agora esqueça o Qemu/KVM e tentei iniciar um 64 bit VM no VirtualBox e depois de um secaond de 64 bits VM ao mesmo tempo no VMware, ou na ordem inversa:

SOMENTE o primeiro é capaz de rodar com uma configuração padrão !!!!

Mas desativando a aceleração de hardware, é possível, como sugerido na resposta por MiGrieves ???

no VirtualBox-5.1:

Propriedades da VM -> Sistema -> Aceleração: desabilitando o HW Accel. é impossível para a máquina de 64 bits VM:

Por exemplo, se você desmarcar "Aceleração de hardware", no menu de configuração de uma determinada máquina de 64bits VM, o configurador VirtualBox protesta e reativa automaticamente "Aceleração de hardware" (verifique no mesmo menu). !!)

no VMware 14:

Máquina Virtual -> Hardware: Processador -> você pode desenterrar o Mecanismo de Virtualização

E ENTÃO o seu 64bits VM pode iniciar, mesmo se o seu recurso de CPU Intel-VT ou AMD-V estiver bloqueado por KVM ou VirtualBox

Então, a VMware no último lançamento de hoje é capaz de emular a instrução Ring 0 para máquinas virtuais de 64 bits, como estava fazendo para a máquina de 32 bits, mais de vinte anos atrás agora !!!! E honestamente, é difícil notar a diferença de desempenho da máquina VMware de 64 bits VM em execução com ou sem aceleração de hardware, sem um benchmark!

===

Agora podemos esperar que alguns dias, kvm e VirtualBox, também possam emular instruções de CPU 0 para a máquina de 64 bits !!!!!

1
erwan-l

VirtualBox e KVM não serão executados ao mesmo tempo. Contudo! VMWare Workstation will executado ao mesmo tempo que qualquer um destes, e isso é interessante.

Em um Intel Sandy Bridge Xeon, o VMWare Workstation e KVM serão executados ao mesmo tempo. VMWare e VirtualBox serão executados ao mesmo tempo. É só que o VirtualBox e KVM não serão executados ao mesmo tempo.

Se o VMWare está conseguindo isso, então deve haver uma maneira que o KVM e o VirtualBox também possam. Talvez o VMWare tenha acesso a especificações proprietárias da Intel que tornam isso possível? Gostaria de poder experimentar isso na AMD, para ver se é apenas uma coisa da Intel.

0
David Baird

Bem, tanto VBox e VMware serão executados em paralelo ao KVM, pelo menos hoje. Você deve, no entanto, desabilitar o uso de aceleração de hardware (desabilitar o VT, colocar a tradução binária) para todos, exceto o KVM. Então, os outros hipervisores serão reproduzidos no modo de software e KVM estará feliz em usar qualquer recurso de VT sozinho.

0
MiGrieves