Remova a memória a quente em uma máquina virtual Linux

11

O Linux suporta a adição de memória ao executar como um guest da VM, no VMware por exemplo. (Às vezes, você precisa informar manualmente o sistema operacional convidado .)

Existe uma maneira segura de fazer a operação inversa - reduzindo a quantidade de memória alocada para uma máquina virtual e, em caso afirmativo, você precisa informar manualmente o convidado Linux antes de tal operação? (Em caso afirmativo, o procedimento é específico para as ferramentas do VMware ou é genérico para qualquer tipo de mecanismo de virtualização?)

    
por 200_success 12.05.2015 / 21:34

2 respostas

7

O ESXi não suporta memória ou CPUs com remoção automática de uma VM. Alguém que eu conheci no pub há alguns meses me disse que a irmã de um amigo de sua prima * tosse * recebeu a resposta de que praticamente nenhum cliente exige esse recurso. Em outras palavras: não se compensa a implementação de hot-remove.

Se você quiser que o ESXi ofereça suporte a isso, acesse VMware e informe-os. Quanto mais pessoas, maiores as chances de implementá-las.

    
por 13.05.2015 / 18:58
4

Eu não posso dizer com certeza no VMware, mas ao usar o kvm, diminuir a memória de uma máquina virtual em execução funciona bem. Claro até um limite, mas o software lhe dirá. Quando você diminuir, a memória na máquina virtual será gradualmente diminuída, até que ela não possa mais ser abaixada. Se você definir a memória para ser menor do que onde parou, será necessário reinicializar a máquina virtual para que ela seja totalmente desativada.

Eu fiz recentemente isso em um sistema rodando o kvm com cerca de 20 máquinas virtuais, onde alguém achou mais sensato comprometer a memória, fazendo com que algumas máquinas virtuais rodassem em swap (doh!). Para consertá-lo, reduzi a memória em cerca de 20-40% de 2/3 das máquinas virtuais e a maioria conseguiu abaixá-la completamente durante a execução. Alguns precisaram de uma reinicialização para que a nova configuração de memória tenha efeito completamente.

Indo a partir disso, eu diria que uma máquina virtual vmware também poderia permitir esse comportamento. No entanto, um teste rápido no vmware player me diz que ele precisará de uma reinicialização para entrar em vigor (o software vmware mais sofisticado pode se comportar melhor). Caso contrário, é seguro fazê-lo em um sistema em execução. É claro que a quantidade de memória que resta é suficiente para executá-lo corretamente é outra questão.

    
por 12.05.2015 / 21:45