Limitar o uso da memória cache do arquivo linux (para evitar o esgotamento da memória do hipervisor)

1

Eu tenho um servidor com 16GB de RAM executando várias máquinas virtuais linux (cerca de 10), que executam várias tarefas diferentes. Essas máquinas, com a configuração padrão, vão encher a memória que eu dou ao máximo com o cache.

Mesmo que este seja um comportamento desejável para hosts físicos, na minha configuração, esse cache está realmente consumindo RAM do host real que não pode ser transferida do host, e me força a definir quantidades relativamente baixas de RAM para o vms (não mais que (16 - host cache)/number of vms ). Isso é bastante indesejável, já que o sistema perde flexibilidade, tornando impossível lidar com solicitações esporádicas de RAM da vms de concreto.

A única abordagem que me vem à mente é limitar a quantidade de RAM que o kernel pode usar para armazenar em cache (ou fazer o cache expirar mais cedo), mas não encontrei nenhuma documentação sobre como fazê-lo. A maioria dos posts no fórum se refere ao linuxatemyram.com ou similar, e eu não pareço nenhum parâmetro relevante exposto em / proc / sys / vm /.

Talvez alguns possam oferecer algumas ideias sobre isso? Eu ficaria muito grato.

    
por Roberto Santalla 23.02.2017 / 15:09

1 resposta

0

Você pode modificar o valor de /proc/sys/vm/vfs_cache_pressure para um valor maior que 100 (valor padrão). Com maior valor além de 100, faz com que o kernel prefira recuperar dentries e inodes .

    
por 23.02.2017 / 15:35