<html><head></head><body>I'm using LXC, and I frequently observe some unused containers get swapped out, even though system has plenty of RAM and no RAM limits are set. The only bad effect I observe is couple of seconds delay when you first log into them after some time. I guess it is absolutely normal since kernel tries to maximize amount of memory available for disk caches.<br>
<br>
If you don't like this behavior, instead of trying to fine tune kernel parameters why not disable swap altogether? Many people run it this way, it's mostly a matter of taste these days. (But first check your software for leaks.)<br>
<br>
> For example, our “server-4” machine shows 8G total RAM, 500MB free, 2.5G available, and 5G of buff/cache. Yet, swap is at 5.5GB and has been slowly growing over the past few days. It seems something is preventing the apps from using the RAM.<br>
<br>
Did you identify what processes all this virtual memory belongs to?<br>
<br>
> To be honest, we have been battling lots of memory/swap issues using LXD. We started with no tuning, but the app stack quickly ran out of memory. <br>
<br>
LXC/LXD is hardly responsible for your app stack memory usage. Either you underestimated it or there's a memory leak somewhere.<br>
<br>
> Given all the issues we have had with memory and swap using LXD, we are seriously considering moving back to the traditional VM approach until LXC/LXD is better “baked”.<br>
<br>
Did your VMs use less memory? I don't think so. Limits could be better enforced, but VMs don't magically give you infinite RAM. <br>
-- <br>
<br>
With Best Regards,<br>
Marat Khalili<br><br><div class="gmail_quote">On July 14, 2017 9:58:57 PM GMT+03:00, Ron Kelley <rkelleyrtp@gmail.com> wrote:<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">Wondering if anyone else has similar issues.<br /><br />We have 5x LXD 2.12 servers running (U16.04 - kernel 4.4.0-57-generic - 8G RAM, 19G SWAP).  Each server is running about 50 LXD containers - Wordpress w/Nginx and PHP7.  The servers have been running for about 15 days now, and swap space continues to grow.  In addition, the kswapd0 process starts consuming CPU until we flush the system cache via "/bin/echo 3 > /proc/sys/vm/drop_caches” command.<br /><br />Our LXD profile looks like this:<br />-------------------------<br />config:<br />  limits.cpu: "2"<br />  limits.memory: 512MB<br />  limits.memory.swap: "true"<br />  limits.memory.swap.priority: "1"<br />-------------------------<br /><br /><br />We also have added these to /etc/sysctl.conf<br />-------------------------<br />vm.swappiness=10<br />vm.vfs_cache_pressure=50<br />-------------------------<br /><br />A quick “top” output shows plenty of available Memory and buff/cache.  But, for some reason, the system continues to swap out the app.  For example, our “server-4” machine shows 8G total RAM, 500MB free, 2.5G available, and 5G of buff/cache.  Yet, swap is at 5.5GB and has been slowly growing over the past few days.  It seems something is preventing the apps from using the RAM.<br /><br /><br />To be honest, we have been battling lots of memory/swap issues using LXD.  We started with no tuning, but the app stack quickly ran out of memory.  After editing the profile to allow 512MB RAM per container (and restarting the container), the kswapd0 issue happens.  Given all the issues we have had with memory and swap using LXD, we are seriously considering moving back to the traditional VM approach until LXC/LXD is better “baked”.<br /><br /><br />-Ron<br /><hr /><br />lxc-users mailing list<br />lxc-users@lists.linuxcontainers.org<br /><a href="http://lists.linuxcontainers.org/listinfo/lxc-users">http://lists.linuxcontainers.org/listinfo/lxc-users</a></pre></blockquote></div></body></html>