Being on a particular provider's VPS so far, I decided to buy another LEB and migrate my sites to it temporarily, for the benefit of having a SolusVM panel. So after painstakingly migrating all my backups, reinstalling my control panel, and setting up virtual domains, I let everything run as usual overnight.
Early morning on trying to open my sites, I found that none of them would open. Having some DNS woes due to personal nameservers, initially I didnt give it much thought. But when I thought of opening a ticket with my provider, to my surprise I found one from my provider, addressed to me (for a change). Apparently my VPS had been suspended for a high CPU load. I was nonplussed for a while because I had never received such a warning from MyRSK and UGVPS my previous hosts.
On contacting the provider, they were decent enough to provide me a screenshot of a graph which showed that CPU spikes on the VPS were occuring at a regular frequency of 4 hours. Because I had a cron job scheduled for every 4 hours, I could immediately address the issue and disable a job which regularly checked for and downloaded Wordpress plugin updates from wordpress.org, via a perl script. Thitherto, I'd never thought of checking scripts for CPU load.
So, coming to the topic proper, what are the methods of monitoring for CPU load on one's container in an OpenVZ and KVM system? What methods due you use to keep track, and possibly notify yourself when your container uses excess CPU load? The methods I know of include uptime
, and the SolusVM graphs. But when many providers do not have SolusVM, is there an alternate systematic approach to monitoring CPU load?