Hi guys! I work as a system administrator, and I have a question about
the virtual memory management mechanism. I made an attempt to find an
answer on the Internet, but the answers are either not complete, or very
contradictory. So I decided to write to you. My question is: why do my
servers use a swap if swappiness = 0 and page cache is measured in tens
of gigabytes?
free -m
total used free shared buff/cache
available
Mem: 257670 195398 2328 68 59944 60856
Swap: 4095 345 3750
uname -r
3.10.0-862.11.6.el7.x86_64
Swap out on a little grows every day.
I increase vfs_cache_pressure, on some servers, for the test, and this
had a positive effect. In the community in which I work, they often
refer to the swap out, as a sign of a certain kind of problems. Because
the server park is large, sometimes it's a flurry of calls at night. I
would like to receive a detailed and weighted answer, how this should
work. Is this normal? I understand that if you look at vmstat, then
often the swap is not used intensively (si / so == 0). Such a mechanism
is trying to save on IO operations? How can I understand the reason for
swap out pages? Are they just old pages? Are there any counters for this?
I would be very grateful if someone spends a little time and answers by
asking a question. Thank you!