
Gehen Sie von der VIRT/RES/SHM-Terminologie aus, die das „oberste“ Dienstprogramm verwendet:
Gilt cgroup memory.limit_in_bytes
für VIRT- oder RES-Speichergrößen? Ich frage, weil es für mich in Fedora 23 so aussah, als ob der RES-Speicher (resident) durch cgroup begrenzt wäre. Dann habe ich Fedora 25 installiert und plötzlich kam es bei mir zu häufigen Prozessabbrüchen, die vorher nicht vorkamen (unten sind einige dmesg-Ausgaben enthalten, um das Problem zu veranschaulichen). Ich habe das Gefühl, dass cgroup zwischen Fedora 23 und 25 sein Verhalten geändert hat und nun die VIRT- statt der RES-Speichernutzung zu begrenzen scheint.
Kann jemand meinen Verdacht bestätigen? Und gibt es eine Möglichkeit, das alte Verhalten wiederherzustellen? Ich habe in den Cgroup-Kernel-Dokumenten herumgesucht, aber nichts gefunden, vielleicht weil ich mit der falschen Terminologie suche.
dmesg-Ausgabe:
Tue Jun 20 01:46:12 2017: Memory cgroup out of memory: Kill process 787 (Web Content) score 204 or sacrifice child
Tue Jun 20 01:46:12 2017: Killed process 787 (Web Content) total-vm:14151032kB, anon-rss:5000940kB, file-rss:6132kB, shmem-rss:115956kB
Antwort1
Es gilt für den Benutzerspeicher inklusive des Datei-Cache.
Überprüfen Sie hier memory.limit_in_byteshttps://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/sec-memory.html
memory.limit_in_bytes legt die maximale Menge an Benutzerspeicher (einschließlich Dateicache) fest.
Sein:
Cache: Seitencache, einschließlich tmpfs (shmem), in Bytes
rss: anonymer und Swap-Cache, ohne tmpfs (shmem), in Bytes