whats the best free monitoring system that will allow me to monitor mem usage and all the server information remotely with graphs and screens?
I use cacti for all but for the best accuracy for traffic graphs you could use mrtg. http://www.cacti.net/ http://oss.oetiker.ch/mrtg/ I have been monitoring around 10 servers from one server remotely with cacti for over 2 years.
I've used cacti as well, but I prefer Nagios --> www.nagios.org Bear in mind that nagios might be a bit overkill for just monitoring a couple of websites and although it's ultra tweakable and extendable, it may not be the easiest monitoring tool to set up. If you only need sysinfo stats (hd partitions, mem, temp, hardware status... ) you can try phpsysinfo --> phpsysinfo.sourceforge.net
Best and most simple I have used is Monit. It keeps my server from not responding and makes sure all the services required run without fault. It restarts dead services and alert me of memory and cpu spikes which is VERY useful! If you want to give it a spin you can use this tutorial to get you started: http://www.codinglikeasir.com/install-setup-monit-server-monitoring/
Using Munin you can easily monitor the performance of your server. It presents all the information in graphs through a web interface.
MRTG is free software and easy to setup, cacti also good if you want more details result. Another choice is PRTG. Good Luck !
We use nagios to monitor hundreds of servers. It holds well as long as your host server has cpu resources and network bandwidth. The best thing I like are the agent modules that actually gets information from inside a remote server without having to login and monitor it every few minutes.
Nagios its definitely an option to consider IF you are monitoring 50+ servers, anything less than that, not worth your time. I suggest using Cacti or phpsysinfo as previously mentioned if you are only looking to monitor a couple of servers.
Nagios is the most popular open source option, but I would also consider looking at HypeicHQ, Zenoss, and Groundwork. This article gets into each of those options in a bit more depth - http://www.futurehosting.com/blog/open-source-server-monitoring-what-are-your-options/ Hope this helps.
If you're looking for a ready-to-use option and not for one that you have to run on your own servers, check out newrelic.com
Don't know why no one has suggested observium, observium is the best in my opinion. Using it for hundreds of servers this now.
I would check out Nagios. It's the best in my opinion. It's not the easiest to manually install but it works great for personal usage or enterprise usage. www.nagios.org
I use Observium, it's really nice and has many support for other devices. It has good looking graphs and SNMP support!