[lxc-users] LXD and Kernel Samepage Merging (KSM)
Ron Kelley
rkelleyrtp at gmail.com
Sun Jun 4 16:16:50 UTC 2017
(Reviving the thread about Container Scaling: https://lists.linuxcontainers.org/pipermail/lxc-users/2016-May/011607.html)
We have hit critical mass with LXD 2.12 and I need to get Kernel Samepage Merging (KSM) working as soon as possible. All my research has come to a dead-end, and I am reaching out to the group at large for suggestions.
Background: We have 5 host servers - each running U16.04 (4.4.0-57-generic), 8G RAM, 20G SWAP, and 50 containers (exact configs per server - nginx and php 7).
I am trying to get KSM working since each container is an identical replica of the other (other than hostname/IP). I have read a ton of information on the ‘net about Ubuntu and KSM, yet I can’t seem to get any pages to share on the host. I am not sure if this is a KSM config issue or if LXD won’t allow KSM between containers.
Here is what I have done thus far:
----------------------------------
* Installed the ksmtuned utility and verified ksmd is running on each host.
* Created the ksm_preload and ksm-wrapper tools per this site (the https://github.com/unbrice/ksm_preload).
* Created 50 identical Ubuntu 16.04 containers running nginx
* Modified the nginx startup script on each container to include the ksm_preload.so library; no issues running nginx.
(Note: since I could not find the ksm_preload library for Ubuntu, I had to use the ksm-wrapper tool listed above)
All the relevant files under /sys/kernel/mm/ksm still show 0 (pages_shared, pages_sharing, etc) regardless of what I do.
Can any (@stgraber @brauner) confirm if KSM is supported with LXD? If so, what is the “magic” to make it work? We really want to get 2-3x more sites per container if possible.
Thanks.
More information about the lxc-users
mailing list