I have a Centos 6 web server (Apache-itk, PHP, MySQL) with ISPconfig. I have about 100 websites on this webserver, all of them belong to me. I must be able to track how much of resources (traffic, CPU, RAM) each site consumes and possibly a way to limit some sites in resources, or give priority to other sites. What's the best way to do it without using virtualization? How do shared web hosts manage their resources?
traffic: ISPconfig shows traffic usage (Sites->web traffic). That's enough for me.
CPU&RAM by Apache: Because each apache vhost runs under different user (MPM-itk), I just need to know how much each user consumes resources overtime. (I've tried atop, but haven't didn't get how to use it yet)
CPU&RAM by mysql: This is the hardest part! All mysql instances run under mysql user. How do I track mysql resources usage by each mysql user?
CloudLinux and BetterLinux seem very interesting, are there free alternatives to it?