qemu-kvm recuperação de memória de hóspedes de baixa utilização

1

Existe uma maneira de recuperar ou impedir o uso de memória de um convidado qemu-kvm?

Cenário A:

Um convidado usa 8 GB de RAM durante o horário de pico, ele retorna para 4 GB de uso à noite, mas o convidado ainda está reivindicando 8 GB de RAM do host.

Cenário B:

Um convidado usa 2 GB de RAM, mas tem 6 GB de RAM no cache de página. O convidado está reivindicando 8GB de RAM do host, mas até 6GB dele pode ser RAM que poderia ter mais importância em outro sistema convidado.

Meu primeiro pensamento sobre o balão foi que o convidado não iria "ver" o efeito de balão, mas ao enviar "balão 2048", a memória dentro do convidado é reduzida para ~ 2GB.

    
por Devon 03.03.2018 / 00:48

1 resposta

2

Você pode ativar balão automático em um convidado libvirt editando o XML:

<memballoon model='virtio'>

O dispositivo balão de memória virtual usa um parâmetro autodeflate , cujo valor padrão é off . Defina como on para ativar o balão automático.

<memballoon model='virtio' autodeflate='on'>

Note que não há opção de GUI no virt-manager para habilitar ou desabilitar esta configuração.

Se você estiver ligando para o qemu manualmente (salve sua sanidade e não o faça), adicione ,automatic=true ao dispositivo balão, por exemplo. -device virtio-balloon,automatic=true .

Autoballooning requer qemu / kvm 1.3.1 ou posterior.

Note que isso provavelmente não resolverá todos os seus problemas de contenção de memória; é melhor simplesmente ter memória RAM suficiente para executar todas as suas máquinas virtuais.

    
por 03.03.2018 / 01:04