Infra - Virtualização

Tudo sobre Dynamic Memory no Hyper-V 2008 R2

Este artigo abordará as novidades, dicas, configurações e informações importantes sobre o Dynamic Memory.

por Leandro Carvalho



Tecnologias

Windows Server 2008 R2 Standard

Windows Server 2008 R2 Enterprise

Windows Server 2008 R2 Datacenter

Hyper-V Server 2008 R2

Sumário

Este artigo abordará as novidades, dicas, configurações e informações importantes sobre o Dynamic Memory.

Conteúdo

Introdução

Estrutura do Dynamic Memory

Configuração

Dicas e informações importantes

Conclusão

Introdução

Nos ambientes em que trabalhamos geralmente fazemos um planejamento para saber o quanto cada servidor irá utilizar de memória, mas existem vários fatores que devem ser considerados como dias de baixa utilização, picos como horários específicos do dia e certas tarefas do mês como fechamento de folha, por exemplo. Para não termos problema geralmente colocamos o máximo do budget para comprar o melhor servidor para esses cenários. Isso gera um grande desperdício de hardware e principalmente de dinheiro. Não existe uma configuração de uso de memória específica para servidores como WebServers, File Servers, Exchange Servers, etc. O que temos as vezes são exemplos e boas práticas, mas que vão por agua abaixo quando eles se deparam com as variantes dos nossos ambientes. A resposta para alocação de memória depende de cada servidor, as vezes ele pode usar mais e outra não usar praticamente nada. Existe um estudo que estipula que não utilizamos mais que 8% da capacidade dos nossos servidores.

Quando você inicia uma máquina virtual (VM) no Windows Server 2008 ou 2008 R2 a memória que foi designada à ela é totalmente alocada, não sofrendo alterações. No exemplo de uma VM que tem 10 GB de memória, ela só poderá ser alterada de você desligá-la, além de ser manualmente.

No Service Pack 1 do Windows Server 2008 R2 uma funcionalidade mudará esse contexto relacionado à memória. Agora a ela é dinamicamente alocada de acordo com a necessidade de uso das máquinas virtuais.

Por exemplo: Existe um servidor na sua estrutura que tem picos de utilização de 80% em certas horas do dia e em certas ocasiões. Você configurou o mesmo com 10 GB de memória. O problema é que na maioria do tempo em producão ele utiliza em média 10% deste valor. Com o Dynamic Memory o Hyper-V pode alocar esta memória para outra VM que está com uma sobrecarga maior e voltar a memória para este servidor quando este estiver precisando.

Esta funcionalidade faz um balanceamento distribuindo a memória entre as VMs. Isso faz com que o uso da memória seja muito mais eficiente melhorando a perfomance e mantendo uma utilização consistente entre elas.

Estrutura do Dynamic Memory

Basicamente o Hyper-V faz um pool de toda memória física com excessão da memória utilizada pelo sistema Host. Depois disso a partição Parent gerencia toda distribuição para as VMs de acordo com as configurações e limitações de cada uma.

Quando uma VM precisa de mais memória ou quando a sobrecarga estiver baixa e existir memória sobrando para outra os serviços de Virtual Service Provider (VSP), Virtual Service Consumer (VSC) e o VMBus adiciona ou remove memória das VMs dinamicamente. Esses três serviços fazem parte da arquitetura dos enlightened drivers disponíveis no IC (integration Components) de cada máquina virtual. A memória só é removida de uma VM se outra necessitar e esta estiver com memória de sobra.

Configurações

Para usar o Dynamic Memory do Service Pack 1 é preciso abrir as configurações da máquina virtual, como mostra a figura abaixo.

Figura 1 – Virtual Machine Settings

Para habilitar a memória dinâmica na máquina virtual escolha a opção Dynamic.

Depois disto é preciso configurar os valores Startup RAM e Maximum RAM.

Startup RAM é o valor que a VM usará durante a inicialização.

Maximum RAM é o limite que a VM usará da memória configurada.

No exemplo da figura 1 a máquina virtual será iniciada com 512 MB de memória e poderá chegar até 2 GB.

Depois é preciso configurar a porcentagem desta memória que estará disponível para ser realocada, conforme a figura 2:

Figura 2 – Configuração de porcentagem  reservada como buffer

Logo após é preciso configurar a prioridade da máquina virtual (figura 3). Caso existam mais que uma VM precisando de mais memória será essa configuração que alocará a memória fazendo um tipo de fila para a entrega da memória entre elas.

Figura 3 – Configuração de prioridade de memória

Depois disto a VM já estará pronta para usar o recurso de Dynamic Memory do Service Pack 1 do Windows Server 2008 R2.

Dicas e informações importantes

Existem algumas dicas que devem ser levadas em consideração ao utilizar o Dynamic Memory.

· O Remote Server Administration Toolkit (RSAT) do Windows 7 e Windows Vista ainda não suportam a configuração do Dynamic Memory.

· O Windows Server Web e Standard edition não são suportados pelo Dynamic Memory no Service Pack 1 Beta.

· Os sistemas Guests devem ter instalado os sistemas operacionais suportados, além de terem o Integration Services atualizados, conforme link

· Documentação do Service Pack 1 do Windows Server 2008 R2

· Windows Server 2008 R2 Service Pack 1

· Guia de avaliação do Hyper-V Dynamic Memory

Conclusão

Com este artigo você pôde entender os benefícios que o Service Pack 1 e o Dynamic Memory pode oferecer na melhoria de alocação de memória entre as máquinas virtuais no Hyper-V.

Leandro Carvalho

Leandro Carvalho - Leandro Carvalho trabalha em um parceiro na Australia como instrutor e engenheiro de sistemas em produtos Microsoft como Windows Server, virtualização, ISA Server, Exchange Server, System Center, CRM Server, Sharepoint e sistemas clientes, além de ajudar a comunidade constantemente com artigos, palestras e foruns.
Possui as certificações MCP/MCSA+M+S/MCSE+S/MCTS/MCITP/MCBMS, MCT e MVP Virtual Machine. No ano de 2009 ele ganhou o prêmio MCT Awards destaque do ano da América Latina e em 2010 o MVP awards especialista em virtualização.
Blog: http://msmvps.com/blogs/msvirtualization
Twitter: @leandroeduardo