O Hyper-V pode ser executado em uma máquina virtual?


8

Ok, todos sabemos (ou devemos saber) que a resposta da Microsoft é um simples " NÃO! ".

Mas também sabemos que os hipervisores recentes podem suportar virtualização aninhada / recursiva, desde que a CPU subjacente ofereça virtualização de hardware; Os produtos recentes da VMware (ESXi 5, Estação de trabalho 8) até suportam isso nativamente , sem a necessidade de hacks feios.

Portanto, minha pergunta é: o Hyper-V pode ser executado com êxito (ou seja, permitindo a execução de máquinas virtuais) dentro de outros hipervisores?

Se sim, quais? E como?


Isso é apenas para teste , é claro.


possivelmente dentro de KVM / HVM ou xen_pv, mas por que você quer, é só pedir para a dor
anthonysomerset

1
por exemplo, para fins de teste.
Mircea Vutcovici 18/10/11

Eu sei que isso foi feito com o ESXi como pai do Hyper-V, mas é muito lento. Desculpe, não tem um link para direções.
Chris S

Que tipo de teste seria realmente válido nesse ambiente?
Jake Oshins

2
Para configurar um cluster Hyper-V de teste, você precisa de pelo menos três servidores físicos; isso geralmente não é algo em que você possa colocar as mãos facilmente.
Massimo

Respostas:


6

Sim, pode, se as CPUs subjacentes suportarem as mais recentes extensões de virtualização (Intel VT-X / EPT) e se você estiver usando os produtos VMware mais recentes (Workstation 8, ESXi 5).

As configurações relevantes na sua VM devem ser as seguintes:

monitor.virtual_mmu = "hardware"
monitor.virtual_exec = "hardware"
vhv.enable = "TRUE"
hypervisor.cpuid.v0 = "FALSE"

As três primeiras configurações podem ser ativadas via GUI (onde varia exatamente exatamente entre a estação de trabalho e o ESXi), a última precisa ser adicionada manualmente ao .vmxarquivo da VM .

Além disso, no ESXi 5, você precisa adicionar a seguinte linha em /etc/vmware/config:

vhv.allow = "TRUE"

Isso foi encontrado por tentativa e erro ou você pode nos indicar a fonte, que pode ter mais informações de interesse para quem pensa em fazer o mesmo?
John Gardeniers 19/10/11

Existem várias fontes na web, todas confirmando as mesmas etapas e configurações; nada oficial, porém, nem da VMware nem da Microsoft (que ainda diz que isso não é possível).
Massimo

3

Existem respostas diferentes para esta pergunta.

Antes do WS2016 / W10, a resposta correta era: Sim, você pode habilitar a função Hyper-V em uma VM Hyper-V, mas o hypervisor não seria iniciado. Portanto, você pode criar VMs no vHost, mas essas VMs não puderam iniciar.

No entanto, no Windows 10 e no WS2016 (TP4 e posterior), podemos usar o Hyper-V aninhado. Se você estiver bravo o suficiente para tentar, poderá criar um host, em um host, em um host, em um host, em um host ...


Uau, isso é verdade, a Microsoft finalmente conseguiu dar suporte à virtualização aninhada: msdn.microsoft.com/en-us/virtualization/hyperv_on_windows/… . Maravilha se permite a hospedagem de ESX / i dentro Hyper-V, também ...
Massimo

@Massimo a partir do seu link - "Ambos os hipervisores precisam ter a versão mais recente do Windows Insider (10565 ou superior). Outros hipervisores não funcionarão." (Além disso: uma razão pela qual a Microsoft teve que fazer o Hyper-V aninhado funcionar é que o suporte a contêiner do Server 2016 pode ser usado em VMs; um dos tipos de contêiner é um contêiner baseado em Hyper-V. Outro motivo pode ser o Modo de segurança virtual no Windows 10 Empresa que mantém senhas em uma VM Hyper-V e executa o sistema operacional principal em outra).
TessellatingHeckler 02/02

@TessellatingHeckler Além do que a Microsoft pode dizer, o Hyper-V conseguiu rodar dentro dos produtos VMware por um tempo (embora é claro que ninguém o apoiou oficialmente); esse aninhamento do Hyper-V é baseado nos mesmos princípios subjacentes, portanto, eu acho que tornaria o Hyper-V capaz de executar outros hipervisores aninhados também (embora, novamente, sem qualquer tipo de suporte oficial).
Massimo

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.