public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* limiting guest block i/o for qos
@ 2010-11-25  5:58 T Johnson
  2010-11-25  8:33 ` Nikola Ciprich
  0 siblings, 1 reply; 5+ messages in thread
From: T Johnson @ 2010-11-25  5:58 UTC (permalink / raw)
  To: kvm

Hello,

Does anyone know of any work in progress or any tricks to limit a
guest's i/o requests to a specific throttled rate? I have guests that
mount their filesystems via virtio, which are images served on an NFS
server. Some of these guests will flood the server with requests and
can then choke out the i/o requests of neighboring guests. I'd rather
be able to specify that certain guests can only get so many read or
write iops. i/o bandwidth rates would be nice, but iops tend to be the
killer since an nfs server only has so many.

I've seen something recently on a block i/o throttling via cgroups,
but from what I've been able to grok... this support is being built
only with local devices in mind? I'm afraid that wouldn't work for my
NFS server setup and image files?

Is there something that can be done from with virtio? Or another trick?

Thanks,
Thomas

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: limiting guest block i/o for qos
  2010-11-25  5:58 limiting guest block i/o for qos T Johnson
@ 2010-11-25  8:33 ` Nikola Ciprich
  2010-11-29  2:00   ` T Johnson
  0 siblings, 1 reply; 5+ messages in thread
From: Nikola Ciprich @ 2010-11-25  8:33 UTC (permalink / raw)
  To: T Johnson; +Cc: kvm, nikola.ciprich

Hello Thomas,
I t hink blkio-cgroup really can't help You here, but since NFS is
network protocol,
why not just consider some kind of network shaping?
n.

On Thu, Nov 25, 2010 at 12:58:22AM -0500, T Johnson wrote:
> Hello,
> 
> Does anyone know of any work in progress or any tricks to limit a
> guest's i/o requests to a specific throttled rate? I have guests that
> mount their filesystems via virtio, which are images served on an NFS
> server. Some of these guests will flood the server with requests and
> can then choke out the i/o requests of neighboring guests. I'd rather
> be able to specify that certain guests can only get so many read or
> write iops. i/o bandwidth rates would be nice, but iops tend to be the
> killer since an nfs server only has so many.
> 
> I've seen something recently on a block i/o throttling via cgroups,
> but from what I've been able to grok... this support is being built
> only with local devices in mind? I'm afraid that wouldn't work for my
> NFS server setup and image files?
> 
> Is there something that can be done from with virtio? Or another trick?
> 
> Thanks,
> Thomas
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

-- 
-------------------------------------
Ing. Nikola CIPRICH
LinuxBox.cz, s.r.o.
28. rijna 168, 709 01 Ostrava

tel.:   +420 596 603 142
fax:    +420 596 621 273
mobil:  +420 777 093 799

www.linuxbox.cz

mobil servis: +420 737 238 656
email servis: servis@linuxbox.cz
-------------------------------------

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: limiting guest block i/o for qos
  2010-11-25  8:33 ` Nikola Ciprich
@ 2010-11-29  2:00   ` T Johnson
  2010-11-29  9:58     ` Stefan Hajnoczi
  0 siblings, 1 reply; 5+ messages in thread
From: T Johnson @ 2010-11-29  2:00 UTC (permalink / raw)
  To: Nikola Ciprich; +Cc: kvm, nikola.ciprich

Hello,

On Thu, Nov 25, 2010 at 3:33 AM, Nikola Ciprich <extmaillist@linuxbox.cz> wrote:
> Hello Thomas,
> I t hink blkio-cgroup really can't help You here, but since NFS is
> network protocol,
> why not just consider some kind of network shaping?
> n.

I thought about this, but it's rather imprecise I imagine if I try to
limit the number of packets per second and hope that matches reads or
writes per second. Secondly, I have many guests running to the same
NFS server which makes limiting per kvm guest somewhat impossible when
the network tools I know if would limit per NFS server.


Thanks



> On Thu, Nov 25, 2010 at 12:58:22AM -0500, T Johnson wrote:
>> Hello,
>>
>> Does anyone know of any work in progress or any tricks to limit a
>> guest's i/o requests to a specific throttled rate? I have guests that
>> mount their filesystems via virtio, which are images served on an NFS
>> server. Some of these guests will flood the server with requests and
>> can then choke out the i/o requests of neighboring guests. I'd rather
>> be able to specify that certain guests can only get so many read or
>> write iops. i/o bandwidth rates would be nice, but iops tend to be the
>> killer since an nfs server only has so many.
>>
>> I've seen something recently on a block i/o throttling via cgroups,
>> but from what I've been able to grok... this support is being built
>> only with local devices in mind? I'm afraid that wouldn't work for my
>> NFS server setup and image files?
>>
>> Is there something that can be done from with virtio? Or another trick?
>>
>> Thanks,
>> Thomas
>> --
>> To unsubscribe from this list: send the line "unsubscribe kvm" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>
> --
> -------------------------------------
> Ing. Nikola CIPRICH
> LinuxBox.cz, s.r.o.
> 28. rijna 168, 709 01 Ostrava
>
> tel.:   +420 596 603 142
> fax:    +420 596 621 273
> mobil:  +420 777 093 799
>
> www.linuxbox.cz
>
> mobil servis: +420 737 238 656
> email servis: servis@linuxbox.cz
> -------------------------------------
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: limiting guest block i/o for qos
  2010-11-29  2:00   ` T Johnson
@ 2010-11-29  9:58     ` Stefan Hajnoczi
  2010-11-30  0:57       ` T Johnson
  0 siblings, 1 reply; 5+ messages in thread
From: Stefan Hajnoczi @ 2010-11-29  9:58 UTC (permalink / raw)
  To: T Johnson; +Cc: Nikola Ciprich, kvm, nikola.ciprich

On Mon, Nov 29, 2010 at 2:00 AM, T Johnson <tjohnson46@gmail.com> wrote:
> Hello,
>
> On Thu, Nov 25, 2010 at 3:33 AM, Nikola Ciprich <extmaillist@linuxbox.cz> wrote:
>> Hello Thomas,
>> I t hink blkio-cgroup really can't help You here, but since NFS is
>> network protocol,
>> why not just consider some kind of network shaping?
>> n.
>
> I thought about this, but it's rather imprecise I imagine if I try to
> limit the number of packets per second and hope that matches reads or
> writes per second. Secondly, I have many guests running to the same
> NFS server which makes limiting per kvm guest somewhat impossible when
> the network tools I know if would limit per NFS server.

Perhaps iptables/tc can mark the stream based on the client process
ID?  Each VM has a qemu-kvm userspace process that will issue file
I/O.  Someone with more networking knowledge could confirm whether or
not it is possible to mark based on the process ID using the in-kernel
NFS client.

You don't need to limit based on packets per second.  You can do
bandwidth-based traffic shaping with tc.

Stefan

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: limiting guest block i/o for qos
  2010-11-29  9:58     ` Stefan Hajnoczi
@ 2010-11-30  0:57       ` T Johnson
  0 siblings, 0 replies; 5+ messages in thread
From: T Johnson @ 2010-11-30  0:57 UTC (permalink / raw)
  To: Stefan Hajnoczi; +Cc: Nikola Ciprich, kvm, nikola.ciprich

On Mon, Nov 29, 2010 at 4:58 AM, Stefan Hajnoczi <stefanha@gmail.com> wrote:
> On Mon, Nov 29, 2010 at 2:00 AM, T Johnson <tjohnson46@gmail.com> wrote:
>> Hello,
>>
>> On Thu, Nov 25, 2010 at 3:33 AM, Nikola Ciprich <extmaillist@linuxbox.cz> wrote:
>>> Hello Thomas,
>>> I t hink blkio-cgroup really can't help You here, but since NFS is
>>> network protocol,
>>> why not just consider some kind of network shaping?
>>> n.
>>
>> I thought about this, but it's rather imprecise I imagine if I try to
>> limit the number of packets per second and hope that matches reads or
>> writes per second. Secondly, I have many guests running to the same
>> NFS server which makes limiting per kvm guest somewhat impossible when
>> the network tools I know if would limit per NFS server.
>
> Perhaps iptables/tc can mark the stream based on the client process
> ID?  Each VM has a qemu-kvm userspace process that will issue file
> I/O.  Someone with more networking knowledge could confirm whether or
> not it is possible to mark based on the process ID using the in-kernel
> NFS client.
>
> You don't need to limit based on packets per second.  You can do
> bandwidth-based traffic shaping with tc.

Thanks. That is an interesting idea. As far as packets or bandwidth,
my thought was IOPS were more expensive than total bytes transferred..
so I would want to limit the number of distinct read/write requests if
possible.

Anyway, I'm surprised this doesn't seem to come up more often. If
anyone out there is listening, please consider this a plea for
something built in to limit i/o in this situation. It would be
extremely useful.

Thanks again

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-11-30  0:57 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-25  5:58 limiting guest block i/o for qos T Johnson
2010-11-25  8:33 ` Nikola Ciprich
2010-11-29  2:00   ` T Johnson
2010-11-29  9:58     ` Stefan Hajnoczi
2010-11-30  0:57       ` T Johnson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox