Colocar um controlador de domínio em uma VM está correto, mas somente contanto que você tenha outro controlador de domínio como um servidor físico . Se não o fizer, mais cedo ou mais tarde você terá problemas. Só faça isso se você estiver ciente de todas as implicações, que são múltiplas (Pessoalmente, para mim, não vale a pena o esforço).
O mesmo se aplica a colocar a VM DC na mesma máquina, usando o sistema operacional como um host que hospeda todos os serviços que você acabou de descrever. Embora possível, evite-o (exceto se você estiver usando a máquina como um VM Host e tiver outros serviços em execução em uma VM também).
Se você tiver condições acima, você pode escolher qualquer solução de virtualização, você não notará muitas diferenças neste cenário.
Edit: Tudo bem, tudo bem, parece que alguns esclarecimentos estão em ordem desde alguns downvoted:
-
Sobre o requisito de um DC físico: O AD geralmente é um serviço altamente crítico, assim como o DNS. Enquanto um pode virtualizar completamente esses serviços, deve-se fazê-lo com muito cuidado e evitar os buracos de loop que atraem. Em geral, aconselho contra isso como uma proteção e proteção adicional, já que uma camada de virtualização introduz pontos de falha adicionais adicionais (e atenua outros) - como em qualquer camada adicional introduzida. Isso inclui erros humanos, como tornar a camada de virtualização dependente de serviços virtualizados (visto o suficiente). A remoção completa da virtualização, no entanto, é a conclusão errada. Escolha uma mistura saudável. Isso ajudará quando ocorrer um desastre (e acabará, eventualmente).
-
Sobre qualquer solução de virtualização: Claro, não use software de vendedores como o vmware player etc. Mas ainda assim, se você tem um ambiente pequeno (e parece que você tem um aqui), é realmente não vale a pena discutir sobre o Hyper-V, vmware, KVM et al. Escolha um que seja fácil para você entender como configurar e manter.