Gerenciamento de memória Xen no pequeno servidor

3

Atualmente, estou executando o VMware vSphere 5 em um servidor que uso em vários projetos. Principalmente eu uso para aprimorar minhas habilidades com administração e executando alguns servidores de jogos.

Recentemente, eu estava pensando em mudar para o Xen (xen.org) ou possivelmente para o Citrix XenServer (versão gratuita).

Quando eu estava olhando para os vários recursos não incluídos no XenServer, notei que um recurso não incluído era o overcommit de memória. Para meu conhecimento limitado, isso foi / está no VMware vSphere. O problema é que desde que eu estava usando o VMware em um ambiente pequeno (1 servidor) eu nem tenho certeza se eu estava utilizando a supercomprometimento de memória.

Então estou me perguntando parcialmente o que é (overcommit de memória) e como eu sei se eu estava utilizando ou não?

    
por ianc1215 23.04.2013 / 23:00

3 respostas

2

Memória sobre comprometimento significa permitir que máquinas virtuais em execução tenham mais RAM atribuída (no total) do que o host físico realmente possui.

Portanto, adicione a RAM da sua máquina virtual que deseja executar ao mesmo tempo e, em seguida, permita algum espaço para o hipervisor e se o total for menor que a RAM física que você não está comprometendo demais.

    
por 23.04.2013 / 23:41
0

No VMware ESX e ESXi, se você instalar o VMware Tools, eles habilitarão o driver de gerenciamento de memória também conhecido como driver de balão.

Outro mecanismo para permitir o excesso de comprometimento de memória é a troca / paginação no nível ESX / ESXi, mas isso é extremamente lento e você deve evitá-lo.

No ESXi 5, além disso, existem outros dois mecanismos para habilitar o excesso de comprometimento de memória. Uma delas é a desduplicação de memória, em que segmentos de memória idênticos serão alocados apenas uma vez. Existe um thread vmkernel que irá analisar a memória no tempo ocioso para encontrar esses segmentos.

O outro mecanismo é a compactação de memória. Em vez de trocar, o servidor criará espaço comprimindo alguma memória.

Para saber se você está usando, adicione a memória alocada para todas as VMs, incluindo o console do ESXi, adicione cerca de 100 MB (isso não é preciso) para o vmkernel. Se isso é mais do que a memória física, então você está exagerando na memória.

Você também pode verificar o tamanho do balão e a troca usada para cada VM nos contadores de desempenho do servidor ESXi.

    
por 23.04.2013 / 23:39
0

O Xen tem técnicas dinâmicas de gerenciamento de memória, como o balão e o auto-balão.

Ele não suporta o overcommit de memória, pois não permite que VMs usem mais memória do que o que você tem fisicamente disponível em seu sistema.

Dito de outra forma: com o Xen, você precisa particionar fisicamente sua RAM entre as VMs, mas ainda é possível ajustar dinamicamente essas partições no tempo de execução sem reinicializar as VMs.

O VMware vSphere Hypervisor, por outro lado, pode também dar às suas máquinas virtuais mais RAM do que você fisicamente, trocando-as para o disco se não conseguir o suficiente real ram (através do balão de outras VMs ou similares).

PS, como uma nota lateral, o Xen também possui uma tecnologia completamente diferente em Memória Trascendente: VMs suportando-o (Linux > = 3.0 AFAIK) podem usá-lo para vários propósitos (principalmente como cache de página, reduzindo IOPS para discos reais) .

    
por 23.04.2013 / 23:50