Você quer alta disponibilidade - a capacidade de tudo continuar funcionando normalmente quando algo falha. A virtualização é uma parte fundamental de oferecer isso. Eu nem pensaria em fazer isso sem máquinas virtuais.
Uma configuração muito simples seria dois servidores físicos com muita RAM, executando VMware ESXI ou HyperV em um cluster e algum armazenamento compartilhado (uma SAN iSCSI, por exemplo). Sou um grande fã do HyperV, especialmente se você obtiver preços educacionais especiais no Windows Server Datacenter. Especifique os sistemas para que tudo possa ser executado em um servidor, embora talvez não tão rapidamente quanto você gostaria em circunstâncias normais. Primeiramente, isso significa ter RAM suficiente para executar tudo. Se você fizer isso, em circunstâncias normais, a carga será balanceada entre os dois servidores, mas se um host físico falhar, tudo continuará em execução e ninguém gritará com você enquanto você o corrige.
Virtualizar significa que você não está limitado pelo número de servidores físicos que possui (embora esteja limitado pela memória e pelo poder da CPU). Isso significa que você pode executar tarefas como executar dois controladores de domínio, com o DHCP configurado como uma função de cluster de failover ou intervalos DHCP divididos. Você também pode usar os novos recursos do Server 2012 para executar um servidor de arquivos continuamente disponível. As mesmas coisas valem para servidores SQL redundantes. Em ambos os casos, você diz à plataforma de virtualização para manter esses pares de máquinas virtuais em servidores físicos separados, por isso, mesmo que um servidor físico morra, ninguém percebe.
Você PRECISA ter dois controladores de domínio. Qualquer coisa menos é pedir problemas no caminho. O Active Directory se liga a tudo e, se desce, muitas coisas se quebram. Mais importante, recuperar o diretório ativo é muito mais fácil se ainda houver um controlador de domínio em funcionamento na rede.
Sua idéia de executar seu servidor de arquivos como um segundo controlador de domínio não é muito terrível. Mas executar o SQL em um controlador de domínio não é uma boa ideia. Servidores separados para tarefas separadas tornam as coisas menos propensas a quebrar, oferecem mais controle sobre o tempo de inatividade (eu preciso atualizar o SQL server ... então tenho que deixar o diretório ativo offline por algum tempo ...), e restaura muito os backups muito mais simples.
A DMZ pode ser manipulada por VLANs nos mesmos servidores ou pode ser uma caixa física separada, dependendo exatamente do que você precisa.
O melhor aspecto da virtualização, além de economizar uma tonelada de dinheiro comprando servidores caros que ficam inativos o dia todo, é que isso desacopla o sistema operacional do hardware. Deseja atualizar o hardware para o modelo mais recente e melhor - sem problemas, sem necessidade de reinstalar o Windows, basta instalar o hipervisor e migrar a máquina virtual. Em muitos casos, isso pode ser feito sem mesmo desligar a máquina virtual, 0 tempo de inatividade . O sistema operacional não sabe seu novo hardware, não precisa de drivers reinstalados, apenas funciona.Trabalhando em uma escola, você provavelmente tem descontos incríveis da Microsoft, então eu recomendo pegar um bom livro sobre o Hyper-V. Para escolher hardware - trabalhe com um fornecedor. A Dell ou a HP ou quem quer que seja, ficarão felizes em mostrar a você uma configuração de servidores e armazenamento que eles já testaram para trabalharem bem juntos.