Gui Jianfeng wrote:
Igor Serebryany wrote:
> On Fri, Feb 18, 2011 at 04:12:28PM +0800, Gui Jianfeng wrote:
>> "blkio.weight" is used to control the Minimal Maximal Bandwidth. If
you'd like
>> to control Max bandwidth to let your guests become I/O hungery.
"blkio.throttle.*"
>> should helps. But these tunables aren't supported by blkiotune for the time
being.
>> I'm considering to implement them in the future.
> I'm still a bit confused. The "weight" controls the
'percentage' of
> resources the VM gets compared to other VMs (or other processes
> participating in the cgroup)? If I have 5 processes running on the
> system, and 4 of them are VMs using cgroups, then the VMs get 4/5s of
> all CPU time for IO tasks, and each VM gets an amount of that 4/5th
> proportional to it's weight? Yes?
Yes, if all weight are the same.
I think here will be misleading.
I means if VMs will get 4/5 bandwidth, the ratio of total weight of VMs and the group
holds the other task should be 4:1.
Thanks,
Gui
> Then, blkio.throttle can be used to set actual hard limits on IO
> consumption -- like, no more than 10Mbps for this VM. I can already do
> this with blkio cgroups, but just not from libvirt -- yes?
yes
> Like many people using libvirt, I only use my hosts for running VMs, and
> I am most interested in limiting IO operations per host to make sure
> that no host monopolizes our SAN. Is there a way for me to just set a
> hard IO throttle limit for libvirt as a whole which would apply to all
> child VMs created by libvirt? I saw a discussion on this list regarding
> group hierarchy, but it went over my head.
There's no way to set this limit by libvirt.
But, I think you can set the limit by hand in cgroup directory. ;)
Thanks,
Gui
> --Igor