Debugging io usage
I've had problems with using up memory and then VM leading to the expected page-thrashing and excessive IO consumption….
I was wondering if anyone on the forum had any suggestions about the best way to track this.
Linode suggested using iotop -o as a quick way of checking. I'm using Debian and used Aptitude to install it, but am getting a couple of errors:
Could not run iotop as some of the requirements are not met:
Python >= 2.5 for AF_NETLINK support: Found
Linux >= 2.6.20 with I/O accounting support: Not found
Python tells me it's 2.5.2 (and it says 'Found' above anyway, which is a bit odd as it says that requirement is not met)
But I'm not sure what to do about the Linux problem, as I'm just using one of the standard linux images that Linode provided. Any ideas?
I'm also looking for an elegant way to get my C++ daemon to know when VM is getting thrashed so I can get it to back away……
I'm looking around online and in books, but wondered if there were any quick 2 line nuggets of experience you might be able to share in the meantime.
Best wishes
Peter
6 Replies
P
One solution to this is to install ntp (which is as simple as running "sudo apt-get install ntp-simple" and you're done), which will keep the clock perfectly in sync.
The conundrum is that while the solution is simple and effective (and people should really be running ntp anyhow), it requires customer action. If Linode were to suddenly give everybody paravirtualized kernels, everybody's clock would start drifting and people might not realize that they need to do something to fix it (or how to fix it).
AFAIK, a lot of the newer distros you can deploy with Linode actually require the paravirt kernel anyhow, since the stable one is too out of date.
@obs:
I think the base installs linode provide all come with ntp now, I don't remember ever installing it manually.
It appears so. Just built a node using Linode's basic LAMP