[CentOS-virt] I/O load distribution

Mon Jul 27 13:30:37 UTC 2009
Dennis J. <dennisml at conversis.de>

On 07/27/2009 03:17 PM, Manuel Wolfshant wrote:
> Dennis J. wrote:
>> Hi,
>> What is the best way to deal with I/O load when running several VMs on a
>> physical machine with local or remote storage?
>> What I'm primarily worried about is the case when several VMs cause disk
>> I/O at the same time. One example would be the "updatedb" cronjob of the
>> mlocate package. If you have say 5 VMs running on a physical System with a
>> local software raid-1 as storage and the all run updatedb at the same time
>> that causes all of them to run really slowly because the starve each other
>> fighting over the disk.
> In this particular case, I would edit /etc/crontab on each VM and move
> the update at another time instead of the traditional 4:02

My problem with that solution is that it puts assumptions about the host 
environment into the guest. If for example I migrate that client to another 
physical host I actually have to remember to modify that entry and maybe 
other to fit into an appropriate time slot on the new host machine.

I'm aware that you cannot make the pain of 5 VMs hammering the disk in 
parallel go away completely but I'm interested in finding out what can be 
done to reduce that pain as much as possible without making the guest too 
aware of its hosting environment.