There are quite number of software running on my server: httpd, varnish, mysql, memcache, java..
Each of them is using a part of the virtual memory and varnish was configured to be allocated 3GB of memory to run.
Due to high traffic load which is 100K, our server ran out of memory and oom-killer is invoked. We've to reboot the server.
We have 8GB of Virtual Memory and due to some reason we cannot extend to larger memory.
My question is – Is there any automated script, which will monitor how much virtual memory left and based upon certain criteria, lets say if 500MB left than restart the server automatically?
I do know this is not the proper solution but we have to do it, otherwise we don't know when server will get OOM and by the time we know and restart the server, we lost our visiting users.
Best Answer
If I understand you correctly, you want something like the following:
This could be done as follow
e.g
Make the script executable
chmod +x scriptname
// note don't add an extensionAdd the script to the cron
crontab -e
Hope you get the idea.