Partilhar via


Visão geral da memória dinâmica Hyper-V

Se você tiver máquinas virtuais ociosas ou de baixa carga, como em ambientes VDI (Virtual Desktop Infrastructure) em pool, a Memória Dinâmica permitirá aumentar a consolidação e melhorar a confiabilidade das operações de reinicialização. Você também ganha agilidade na resposta a mudanças de requisitos com esses novos recursos.

Principais benefícios

Com a Memória Dinâmica, você pode obter números de consolidação mais altos com maior confiabilidade para reiniciar operações. Esse recurso pode levar a custos mais baixos, especialmente em ambientes que têm muitas máquinas virtuais ociosas ou de baixa carga, como ambientes VDI em pool. As alterações à configuração em tempo de execução da memória dinâmica podem reduzir o tempo de inatividade e fornecer maior agilidade para responder às mudanças nos requisitos.

Hyper-V em execução no Windows Server calcula automaticamente uma quantidade de memória a ser reservada para uso exclusivo pelo sistema operacional host de gerenciamento. Essa memória é usada para executar serviços de virtualização. Se o computador fizer parte de um cluster de failover, Hyper-V também reservará memória suficiente para executar serviços de cluster de failover.

Descrição geral técnica

A memória dinâmica define memória de inicialização como a quantidade mínima de memória que uma máquina virtual pode ter. No entanto, o Windows requer mais memória durante a inicialização do que o estado estacionário. Como resultado, os administradores às vezes atribuem memória extra a uma máquina virtual porque Hyper-V não podem recuperar memória dessas máquinas virtuais após a inicialização. A memória dinâmica introduz uma configuração de memória mínima, que permite que Hyper-V recupere a memória não utilizada das máquinas virtuais. Esse recurso é refletido como o aumento dos números de consolidação de máquinas virtuais, especialmente em ambientes VDI (Virtual Desktop Infrastructure).

O Windows Server também introduziu a Paginação Inteligente para operações confiáveis de reinicialização de máquinas virtuais. Embora a memória mínima aumente os números de consolidação da máquina virtual, ela também traz um desafio. Se uma máquina virtual tiver uma quantidade menor de memória do que sua memória de inicialização e se for reiniciada, Hyper-V precisará de memória adicional para reiniciar a máquina virtual. Devido à pressão da memória do host ou aos estados da máquina virtual, Hyper-V nem sempre têm memória adicional disponível. Essa limitação pode causar falhas esporádicas de reinicialização da máquina virtual. O Smart Paging preenche a lacuna de memória entre a memória mínima e a memória de inicialização e permite que as máquinas virtuais sejam reiniciadas de forma confiável.

Configuração mínima de memória com operação de reinicialização confiável

Como na versão anterior da Memória Dinâmica, você pode configurar uma quantidade mínima de memória para máquinas virtuais e Hyper-V continua a garantir que sempre atribua essa quantidade para máquinas virtuais em execução.

Para fornecer uma experiência de reinicialização confiável para máquinas virtuais configuradas com menos memória mínima do que a memória de inicialização, o Hyper-V usa a Paginação Inteligente. Esse método de gerenciamento de memória usa recursos de disco como memória adicional e temporária quando mais memória é necessária para reiniciar uma máquina virtual. Esta abordagem tem vantagens e inconvenientes. Ele fornece uma maneira confiável de manter as máquinas virtuais em execução quando não há memória física disponível. No entanto, ele pode degradar o desempenho da máquina virtual porque as velocidades de acesso ao disco são muito mais lentas do que as velocidades de acesso à memória.

Importante

Ao instalar ou atualizar o sistema operacional de uma máquina virtual, a quantidade de memória disponível para a máquina virtual durante o processo de instalação e atualização é o valor especificado como RAM de inicialização. Mesmo se você configurar a memória dinâmica para a máquina virtual, a máquina virtual usa apenas a quantidade de memória configurada na configuração RAM de inicialização . Verifique se o valor de RAM de inicialização atende aos requisitos mínimos de memória do sistema operacional durante o procedimento de instalação ou atualização.

Para minimizar o impacto no desempenho do Smart Paging, Hyper-V o usa somente quando todas as seguintes condições ocorrem:

  • A máquina virtual está sendo reiniciada.
  • Não há memória física disponível.
  • Nenhuma memória pode ser recuperada de outras máquinas virtuais em execução no host.

Hyper-V não usa o Smart Paging quando:

  • Arranca uma máquina virtual a partir de um "estado desligado" (em vez de uma reinicialização).
  • Você sobreatribui memória para uma máquina virtual em execução.
  • Uma máquina virtual faz failover em Hyper-V clusters.

Quando você superinscreve a memória do host, Hyper-V continua a confiar na operação de paginação no sistema operacional convidado porque é mais eficaz do que a Paginação Inteligente. A operação de paginação no sistema operacional convidado é executada pelo Gerenciador de Memória do Windows. O Gerenciador de Memória do Windows tem mais informações do que o host Hyper-V sobre o uso de memória na máquina virtual, o que significa que ele pode fornecer Hyper-V informações melhores para usar ao escolher a memória a ser paginada. Por causa disso, o sistema incorre em menos sobrecarga em comparação com o Smart Paging.

Para reduzir ainda mais o impacto da Paginação Inteligente, o Hyper-V remove a memória da máquina virtual depois de concluir o processo de inicialização. Este processo atinge este objetivo coordenando com componentes de memória dinâmica dentro do sistema operativo convidado (*ballooning*), de forma que a máquina virtual deixe de utilizar o Smart Paging. Com esta técnica, o uso do Smart Paging é temporário e não se espera que dure mais de 10 minutos.

Observe também o seguinte sobre como Hyper-V usa o Smart Paging:

  • Ele cria arquivos de paginação inteligente somente quando necessário para uma máquina virtual.
  • Ele elimina arquivos de Paginação Inteligente depois de remover a quantidade adicional de memória.
  • Não utiliza a Paginação Inteligente nessa máquina virtual novamente até que ocorra outra reinicialização e não haja memória física suficiente.

Alterações na configuração da memória dinâmica em tempo de execução

Hyper-V permite que você faça as seguintes alterações de configuração na memória dinâmica quando a máquina virtual está em execução:

  • Aumente a memória máxima.
  • Diminua a memória mínima.

Sobre as configurações de memória dinâmica

As seguintes configurações de máquina virtual no Hyper-V Manager permitem configurar a Memória Dinâmica. Analise as descrições a seguir para entender como os recursos funcionam e como eles estão relacionados.

Configuração Description
RAM de arranque Especifica a quantidade de memória necessária para iniciar a máquina virtual. O valor precisa ser alto o suficiente para permitir que o sistema operacional convidado seja iniciado, mas deve ser o mais baixo possível para permitir a utilização ideal da memória e taxas de consolidação potencialmente mais altas.
RAM mínima Especifica a quantidade mínima de memória que deve ser alocada para a máquina virtual após o início da máquina virtual. Defina o valor tão baixo quanto 32 MB até um valor máximo igual ao da RAM de inicialização.
RAM máxima Especifica a quantidade máxima de memória que essa máquina virtual pode usar. Defina o valor desde o mínimo autorizado para a RAM de inicialização até um máximo de 1 TB. No entanto, uma máquina virtual pode usar apenas tanta memória quanto a quantidade máxima suportada pelo sistema operacional convidado. Por exemplo, se você especificar 64 GB para uma máquina virtual executando um sistema operacional convidado que ofereça suporte a um máximo de 32 GB, a máquina virtual não poderá usar mais de 32 GB.
Buffer de memória Especifica a quantidade de memória que Hyper-V tenta atribuir à máquina virtual em comparação com a quantidade de memória realmente necessária para os aplicativos e serviços em execução dentro da máquina virtual. O buffer de memória é especificado como uma porcentagem porque a quantidade real de memória que representa o buffer muda em resposta a alterações no uso de memória enquanto a máquina virtual está em execução. Hyper-V usa contadores de desempenho na máquina virtual que identificam a memória confirmada para determinar os requisitos de memória atuais da máquina virtual e, em seguida, calcula a quantidade de memória a ser adicionada como um buffer. O buffer é determinado usando a seguinte fórmula: Quantidade de buffer de memória = quanta memória a máquina virtual realmente precisa / (valor do buffer de memória / 100). Por exemplo, se a memória comprometida com o sistema operacional convidado for de 1.000 MB e o buffer de memória for de 20%, Hyper-V tentará alocar 20% adicionais (200 MB) para um total de 1.200 MB de memória física alocada para a máquina virtual. Observação: O buffer não é mantido quando não há memória física suficiente disponível no computador para dar a cada máquina virtual o buffer de memória solicitado.
Peso da memória Fornece Hyper-V uma maneira de determinar como distribuir memória entre máquinas virtuais se não houver memória física suficiente disponível no computador para fornecer a cada máquina virtual a quantidade de memória solicitada.

Perguntas frequentes sobre memória dinâmica / gerenciamento de memória Hyper-V

Seguem-se algumas perguntas frequentes sobre a Memória Dinâmica.

Preciso configurar manualmente o tamanho do arquivo de paginação depois de instalar a função Hyper-V?

Não, é recomendável permitir que o sistema gerencie o tamanho do arquivo de paginação ao executar o Hyper-V.

Como a memória é dividida entre o sistema operacional host e as máquinas virtuais em execução?

Hyper-V monitora a integridade do tempo de execução do sistema operacional host para determinar quanta memória ele pode alocar com segurança para máquinas virtuais.

Minha máquina virtual falhou ao iniciar com a seguinte mensagem de erro "Não há memória suficiente no sistema para iniciar a máquina virtual" ou "Não foi possível inicializar a memória: Ficou sem memória (0x8007000E)". Como posso saber quanta memória está disponível para máquinas virtuais?

Conforme descrito anteriormente, o Hyper-V monitora a integridade do tempo de execução do sistema operacional host para determinar quanta memória ele pode alocar com segurança para máquinas virtuais.

Você pode ver a quantidade atual de memória disponível para máquinas virtuais no seguinte contador do Monitor de Desempenho: Hyper-V Dynamic Memory Balancer – Available Memory.