Alocação de recursos com o vSphere Hypervisor

2

Estou construindo um servidor doméstico em um PC antigo (Core 2 Duo E6600 como processador, 4 GB de RAM, dois discos rígidos, um para cada VM) e estou tendo dificuldades com uma de minhas VMs. Atualmente, tenho duas VMs, uma executando o Untangle OS e a outra executando o Windows Server 2008 R2. O Untangle VM funciona perfeitamente, mas o Server 2008 é muito lento, com quase nada instalado, exceto o sistema operacional (acho que eu só instalei um antivírus, que só faz a varredura sob demanda).

Embora o PC seja antigo, tenho certeza que ele deve executar o Server 2008 muito bem, embora você possa me corrigir se eu estiver errado. Eu li sobre o processador e descobri que ele realmente tinha 2 processadores físicos e 2 lógicos em cada físico (não tenho certeza qual é exatamente a diferença). Dito isto, achei que tinha quatro processadores para alocar às minhas VMs. Em seguida, atribuí 1 processador e 1 GB de RAM à VM Untangle, e três processadores e 3 GB de RAM ao Server 2008. O Windows Server estava praticamente inutilizável. Então eu aprendi com um colega de trabalho que o processo pode realmente congelar quando atribuído a dois processadores físicos diferentes, pois os dados teriam problemas para cruzar o caminho através de cada soquete físico (não tenho certeza se está certo). Ele sugeriu que eu colocasse apenas 2 processadores nessa VM, para que todos os dados fossem processados no mesmo processador físico. Isso pareceu corrigir o problema por alguns bits, mas ainda estou passando por algum fragmento de tempo em que a VM é executada muito lentamente. Vem por ondas. Eu posso executar uma verificação de vírus e ela é muito rápida nos primeiros 30 minutos, mas depois diminui muito, e quando termina, mal consigo abrir o Windows Explorer.

Eu também reservei 4800 MHz para a VM com o Server 2008 (não tenho certeza se realmente significa dois processadores completos, já que eles são executados a 2,4 GHz cada), mas não estou muito familiarizado com essa noção de reserva de recursos.

Eu estou querendo saber se os recursos da VM são distribuídos corretamente (o que eu acho que não são, mas isso é apenas um sentimento), ou se é apenas um PC antigo e terá problemas para executar o Windows Server 2008.

Por favor, perdoe-me se estou usando termos errados ou misturando noções, já que sou novo nesse mundo de virtualização.

Obrigado pela ajuda,

Louis

    
por louis 21.11.2014 / 02:18

1 resposta

0

Pouco tempo demais para um comentário, então estou adicionando como resposta.

O seu CPU é um CPU dual core com um clock de 2.4GHz ou 2400MHz por núcleo. [ 1 ] Isso equivale a 4800Mhz de processamento total a qualquer momento. Normalmente falando, o sistema operacional lida com o gerenciamento dos recursos de um computador. O VMWare ESXi é um sistema operacional básico, também conhecido como hipervisor. Basicamente isso significa que não há muito para isso, e é por isso que você pode instalar o ESXi em um cartão SD de 1GB, se você realmente quiser. [ 2 ]

Quando se trata de gerenciar os recursos da CPU, existe algo chamado scheduler que controla como e quando os processos são executados na CPU. O ESXi tem um agendador embutido no seu kernel. [ 4 ] Tudo está bem e bem enquanto houver é suficiente processamento disponível para o planejador para dar a todos os processos executando o tempo de CPU que eles precisam. Um computador pode começar a funcionar lentamente e não responder se houver mais trabalho a ser feito do que ele pode processar prontamente. Quando isso ocorre no ESXi, o kernel começa a dividir em tempo os núcleos da CPU física para que todas as máquinas virtuais tenham a chance de executar as instruções de que precisam. [ 3 ]

Como todos sabemos que os computadores funcionam por magia, tudo deve funcionar, certo?

Bem, vamos analisar desta forma: você tem duas VMs atualmente e você tem 4800MHz de energia da CPU para todos eles compartilharem. Opa, quase esqueci o ESXi ... Isso significa que você tem um total de três coisas sendo executadas na estação de trabalho. Todas essas três coisas estão tentando usar uma parte do total de 4800MHz que está disponível. A boa notícia é que, na maioria das circunstâncias, deve haver o suficiente para funcionar, porque os sistemas operacionais mais não utilizam 100% da CPU em todos os momentos.

Agora, para as más notícias: você disse ao ESXi para fornecer todos os 4800MHz de tempo de CPU para a VM guest do Windows, independentemente da disponibilidade. Efetivamente, isso não deixa mais nada para os outros dois usarem. O ESXi dividirá em tempo as CPUs físicas para que as outras coisas possam ser executadas também. Esse fatiamento de tempo não afeta realmente o Untangle ou o ESXi porque eles estão sendo executados da maneira que precisam, quando precisam ser executados. Isso afeta a VM do Windows porque, quando está tentando fazer alguma coisa, está sendo interrompido durante vários intervalos curtos pelo programador do ESXi. Uma pequena interrupção aqui ou ali não é perceptível, mas está acontecendo repetidamente muitas e muitas vezes por segundo, o que pode explicar por que a VM do Windows é tão lenta às vezes.

Seu colega de trabalho não estava muito certo em seu diagnóstico da sua máquina porque ela tem apenas um soquete e uma CPU, embora a resolução recomendada dele seja um passo na direção certa. Levar a contagem virtual da CPU de 3 para 2 ajudou porque você "superprovisionou" os recursos da CPU. Basicamente, sua configuração em relação à reserva da CPU também é chamada pelo mesmo nome. Para resolver isso, você precisa mover sua reserva para cerca de 1000MHz e definir um limite de CPU entre 3000 e 3800MHz. Fazer isso pode não resolver todos os problemas de lentidão, mas deve ajudar.

Fontes:

[1] http://ark.intel.com/products/27250/Intel-Core2-Duo-Processor-E6600-4M-Cache-2_40-GHz-1066-MHz-FSB
[2] http://pubs.vmware.com/vsphere-55/index.jsp#com.vmware.vsphere.install.doc/GUID-DEB8086A-306B-4239-BF76-E354679202FC.html
[3] http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vsphere.resmgmt.doc%2FGUID-DFFA3A31-9EDD-4FD6-B65C-86E18644373E.html
[4] http://www.vmware.com/files/pdf/techpaper/VMware-vSphere-CPU-Sched-Perf.pdf
    
por 21.11.2014 / 22:33