Size: a a a

2019 September 03

J

Jenny in DevOps Moscow
да, а еще вот это
источник

SP

Sergey Pechenko in DevOps Moscow
А то я читаю дальше:  Currently no soft limit is implemented for kernel memory. It is future work
to trigger slab reclaim when those limits are reached, и перевожу это как "всем насрать"
источник

J

Jenny in DevOps Moscow
Sergey Pechenko
А то я читаю дальше:  Currently no soft limit is implemented for kernel memory. It is future work
to trigger slab reclaim when those limits are reached, и перевожу это как "всем насрать"
софт лимит это про другое
источник

J

Jenny in DevOps Moscow
это типа лимит после которого начинается досрочный реклайм
источник

J

Jenny in DevOps Moscow
меня смущают две вещи
источник

J

Jenny in DevOps Moscow
1. В доке сказано, что реклайм идет и на рсс+кернел
источник

J

Jenny in DevOps Moscow
но при этом мем контроллер вон как пишет:
Total page cache as page cache is easily reclaimed
Total free pages because they are already available
Total free swap pages as userspace pages may be paged out
Total pages managed by swapper_space although this double-counts the free swap pages. This is balanced by the fact that slots are sometimes reserved but not used
Total pages used by the dentry cache as they are easily reclaimed
Total pages used by the inode cache as they are easily reclaimed
источник

J

Jenny in DevOps Moscow
тут нет про рсс
источник

J

Jenny in DevOps Moscow
2.     U != 0, K = unlimited:
   This is the standard memcg limitation mechanism already present before kmem
   accounting. Kernel memory is completely ignored.

значит ли это, что когда кмем.лимит выключен, то кмем вообще не считается?
источник

J

Jenny in DevOps Moscow
2.7.2
источник

SP

Sergey Pechenko in DevOps Moscow
Jenny
2.     U != 0, K = unlimited:
   This is the standard memcg limitation mechanism already present before kmem
   accounting. Kernel memory is completely ignored.

значит ли это, что когда кмем.лимит выключен, то кмем вообще не считается?
скорее, не будет ничего происходить по нему
источник

J

Jenny in DevOps Moscow
а еще есть вот так
источник

J

Jenny in DevOps Moscow
источник

J

Jenny in DevOps Moscow
получается, что с некоторой версии ядра кмем считается всегда
источник

J

Jenny in DevOps Moscow
Glauber Costa memcg: kmem accounting basic infrastructure
510fc4e on 19 Dec 2012
источник

SP

Sergey Pechenko in DevOps Moscow
Jenny
получается, что с некоторой версии ядра кмем считается всегда
ну да, только без реакции, если лимиты отключены
источник

J

Jenny in DevOps Moscow
кажется, даже не стоит говорить о тех версиях
источник

J

Jenny in DevOps Moscow
сдается мне, что по дефолту kmem.limit = memory.limit
источник

K

Konstantin in DevOps Moscow
когда придёт OOM - смотреть он будет на oom_score, а не на память в первую очередь.
источник

J

Jenny in DevOps Moscow
Sergey Pechenko
скорее, не будет ничего происходить по нему
так вот если он все-таки попадает в main counter, то возникает вопрос, откуда берется current memory, чтобы игнорировать kernel memory. Либо оно не считается вовсе
источник