Search code examples
linuxdockerkernelnetdata

Should I modify the kernel inside docker or in my host to correct "netdata warning"?


I am installing netdata in a docker container and it tells me :

"Memory de-duplication instructions, You have kernel memory de-duper available, but it is not currently enabled. To enable it run :"

echo 1 >/sys/kernel/mm/ksm/run && echo 1000 >/sys/kernel/mm/ksm/sleep_millisecs  

It also say "If you enable it, you will save 40-60% of netdata memory."

Should I run this command in my host or inside the docker container ?

Edit

I am running my docker container using:

  net:        host
  privileged: true
  pid:        host

Solution

  • The command should be run inside the container.

    The netdata program is running inside the docker container and doesn't have access to the host's filesystem. So running the command on the host will be useless since the changes in the files /sys/kernel/mm/ksm/run and /sys/kernel/mm/ksm/sleep_millisecs will not be seen by programs running inside the container.