OpenVZ vs KVM para VMs Linux

2

Hardware: Intel® Core ™ i7-920, 12 GB de RAM DDR3, 2 x HDD SATA-II de 1500 GB (sem SoftRaid porque os desenvolvedores do Proxmox não suportam softraid e têm certeza de que você terá problemas)

Software: Proxmox VE com KVM e Suporte ao OpenVZ e debian em todos os lugares

Eu quero executar várias VMs do Linux neste servidor. Um para um firewall (eu quero tentar o pfSense ), um para o MySQL, uma VM para o nginx (minhas coisas) e ~ 2 VMs com nginx para sites de outras pessoas.

Eu não acho que o pfSense seja executado em um ambiente OpenVZ, mas deve ser executado no KVM.

A questão é se eu deveria configurar as outras VMs usando o KVM ou o OpenVZ. No OpenVZ, eles devem ter menos sobrecarga para o próprio SO, mas eu não sei sobre o desempenho. Ouvi dizer que o KVM é mais estável, mas precisa de mais RAM e CPU.

Eu encontrei este diagrama mostrando um OpenVZ configuração no mesmo hardware que estou usando. Esse cara usa uma própria VM para cada site que está sendo executado em seu servidor. Não consigo pensar em nenhuma vantagem por que ele está usando tantas VMs.

Editar:

Existe uma maneira de dar às VMs RAM "dinâmica" no OpenVZ ou no KVM? Quero dizer, eles podem ter tanta memória quanto disponível e não tanto quanto eu me dedico a eles.

    
por Eliasdx 30.01.2011 / 12:07

4 respostas

2

No OpenVZ, todas as VMs e host compartilham o mesmo kernel, então você não poderá instalar o pfsense (que é baseado no FreeBSD). Mesmo no KVM você terá problemas com o pfsense porque os drivers do virtio ainda não estão portados para o FreeBSD, tanto quanto eu sei. Então você terá degradado o desempenho em comparação com o Linux VM. Se você pode viver com isso eu não sei. Depende provavelmente da carga esperada do firewall.
No KVM, você pode alocar para as VMs mais memória, em seguida, está fisicamente disponível. É chamado de supercomprometimento de memória. Existem várias maneiras de fazer isso: Swapping, Ballooning, compartilhamento de página, Live migration.

    
por 07.02.2011 / 21:55
2

O nginx e o MySQL funcionam bem no OpenVZ e o OpenVZ usa menos recursos que o KVM. Eu recomendo VM OpenVZ para a velocidade.

KVM VM mais flexibilidade. O pfSense (FreeBSD) é executado apenas no KVM.

    
por 30.01.2011 / 12:29
1

Eu escolhi o KVM com o KSM. O Proxmox tem kernel sem OpenVZ, mas com o KSM. Às vezes é difícil e leva muito tempo para ajustar os limites do sistema para cada VM no OpenVZ. Então minha escolha é KVM. Eu uso o gentoo como VM.

    
por 30.01.2011 / 14:58
1

Is there a way to give the VMs "dynamic" RAM in OpenVZ

Sim, você pode ajustar a memória total e o espaço em disco que uma VM pode alocar no OpenVZ enquanto ela está em execução. Normalmente, para facilitar ao máximo, começo com as configurações ilimitadas para tudo e diminuo essa configuração, chamada "privvmpages"

Para responder à pergunta original - o OpenVZ é o que é conhecido como uma VM "contêiner" em vez de um "hipervisor". Isso significa que você obtém uma cópia virtual de "init" com o diretório raiz definido para um diretório em algum lugar no sistema de arquivos (também conhecido como "chroot"). Você só recebe um subconjunto de dispositivos e não pode usar módulos do kernel. É por isso que pode ser difícil conseguir uma VM para inicializar (especialmente com @ #% @% upstart). E esqueça coisas como GFS ou Oracle RAC:)

Mas vale a pena para a CPU nativa & desempenho de disco, facilidade de mover arquivos para a VM do host usando apenas "cp" e a rede com alias fácil (sem necessidade de ponte se você não estiver transmitindo).

    
por 14.07.2011 / 05:10