Sem memória a 18% de uso: onde o ram vai?

4

Isso está relacionado a: Sem memória, com 72% de uso

Parece ser o mesmo problema, mas a questão é um pouco diferente: para onde vai minha memória? Eu tenho 18% de uso de memória e meu OOM Killer está matando o mysqld a cada 10 minutos.

Consegui reunir algumas informações:

1 - Graças ao link , descobri que o relatório da OOM Killer mostra que DMA35 + DMA + O uso normal está em 96% (o relatório link ) ... então há um problema ...

2 - A lista de processos do OOM Killer: link

3 - As ferramentas free, top, htop e outras estão mostrando o uso de 18% de RAM no máximo. Aqui está o melhor uso de RAM de classificação ( link )

4 - free -m não informa nada sobre o problema do ram:

              total        used        free      shared  buff/cache   
available
Mem:           6809         414         470         201        5924        5825

(Eu adicionei algumas swap, pois não tive swap nesta máquina virtual, mas nada mudou, nenhuma troca é usada)

5 (EDIT): Obrigado ao Daniel Gordi eu limpo meu buff / cache free && sync && echo 3 > /proc/sys/vm/drop_caches && free e executei o oom-killer manualmente com echo f > /proc/sysrq-trigger . E, WTF, o relatório de ram do oom-killer (DMA35 + DMA + Normal) mostra meu uso esperado de ram: 18%! Eu sempre achei que buff/cache significa disponível quando o sistema operacional precisa ...

Por que e onde o carneiro é comido?

(Eu realmente espero que eu poderia ter alguma ajuda lá como o meu servidor de produção é realmente instável desde que este problema aparece :( Obrigado)

    
por Ifnot 09.10.2018 / 12:29

1 resposta

0

Tente descobrir qual processo usando sua RAM com ps aux --sort -rss .
Considera que a saída do servidor para free -m da maioria da RAM foi armazenada em buffer / em cache. Tente limpar os caches com este comando:
# free && sync && echo 3 > /proc/sys/vm/drop_caches && free

    
por 09.10.2018 / 15:06