Como a saída das estatísticas do docker se relaciona com a saída principal?

4

Eu tenho um processo em execução em um contêiner do Docker no Linux, com um limite de memória de 2 GB. (O contêiner é iniciado com docker run --memory=2g .)

Aqui está o que o top diz sobre isso depois de estar funcionando há algum tempo.

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 9016 root      20   0 7342132 4.652g 4.224g S 100.0  7.4  18828:28 blah

Aqui está a saída de docker stats :

CONTAINER           CPU %               MEM USAGE/LIMIT     MEM %               NET I/O
d7032e5928b6        100.02%             2.076 GB/2.147 GB   96.68%              345 MB/199.1 MB

Depois de reiniciá-lo, top :

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 5653 root      20   0 2787800 1.328g 1.030g S 100.0  2.1   0:37.57 blah

docker stats :

CONTAINER           CPU %               MEM USAGE/LIMIT     MEM %               NET I/O
10cefdce241f        99.97%              320.4 MB/2.147 GB   14.92%              36.34 kB/22.48 kB

Então, isso corresponde (muito aproximadamente) a RES - SHR , o que faz algum sentido para mim - mas o cálculo equivalente para a saída do contêiner de longa duração não corresponde da mesma maneira.

O que exatamente o Docker está contando aqui? Posso combinar de alguma forma com a saída de top ou alguma outra ferramenta?

    
por Tom Seddon 10.11.2015 / 14:45

1 resposta

0

As estatísticas do docker incluem também a memória cache de arquivos. Ele será liberado mediante solicitação, mas é contado como usado.

    
por 18.02.2017 / 11:52