[Openstack-operators] Problem with Heavy Network IO and Dnsmasq

Thomas Vachon vachon at sessionm.com
Mon Aug 20 13:44:30 UTC 2012


On Wed, Aug 15, 2012 at 11:19 AM, Eugene Nelen <enelen at helioscloud.com>
wrote:
>
>
>
> On Wed, Aug 15, 2012 at 6:01 PM, Thomas Vachon <vachon at sessionm.com>
> wrote:
>>
>> On Wed, Aug 15, 2012 at 10:56 AM, Eugene Nelen <enelen at helioscloud.com>
>> wrote:
>> >
>> >
>> > On Wed, Aug 15, 2012 at 5:31 PM, Thomas Vachon <vachon at sessionm.com>
>> > wrote:
>> >>
>> >> On Wed, Aug 15, 2012 at 10:28 AM, Narayan Desai
>> >> <narayan.desai at gmail.com>
>> >> wrote:
>> >> > On Wed, Aug 15, 2012 at 9:16 AM, Thomas Vachon <vachon at sessionm.com>
>> >> > wrote:
>> >> >> On Wed, Aug 15, 2012 at 9:58 AM, Thomas Vachon
>> >> >> <vachon at sessionm.com>
>> >> >> wrote:
>> >> >>> On Wed, Aug 15, 2012 at 8:54 AM, Thomas Vachon
>> >> >>> <vachon at sessionm.com>
>> >> >>> wrote:
>> >> >>>>
>> >> >>>> On Wed, Aug 15, 2012 at 8:53 AM, Narayan Desai
>> >> >>>> <narayan.desai at gmail.com> wrote:
>> >> >>>> > On Wed, Aug 15, 2012 at 7:24 AM, Thomas Vachon
>> >> >>>> > <vachon at sessionm.com> wrote:
>> >> >>>> >
>> >> >>>> >> I am also on Precise.  Downing/Up'ing the interface via VNC
>> >> >>>> >> did
>> >> >>>> >> work.
>> >> >>>> >> How exactly did you setup vhost_net, can you provide your
>> >> >>>> >> libvirt?
>> >> >>>> >
>> >> >>>> > Hm, that might mean that isn't the problem, but this is an easy
>> >> >>>> > enough
>> >> >>>> > thing to check.
>> >> >>>> >
>> >> >>>> > Setting up vhost_net is pretty easy; it is auto-detected by
>> >> >>>> > kvm, so
>> >> >>>> > all you need to do is modprobe it on the hypervisor.
>> >> >>>> >  -nld
>> >> >>>>
>> >> >>>> Found the docs saying that.  It might help, I will report back on
>> >> >>>> this
>> >> >>>> thread when I run the tests in a bit
>> >> >>>
>> >> >>> OK, I lost all connectivity between nova-network and my vm's.
>> >> >>> DNSMasq
>> >> >>> is running and I added the vhost_net module (and confirmed libvirt
>> >> >>> sees it).  Do I need to do something to the guests now too?
>> >> >>
>> >> >> I think I found the root bug:
>> >> >> https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/997978
>> >> >
>> >> > Yeah, this is where i found the vhost_net workaround. (it seems to
>> >> > work for some people and not for others, so I suspect the problem is
>> >> > more complicated somehow)
>> >> >  -nld
>> >>
>> >> The workaround of adding it?  When I added it, I lose all connectivity
>> >> to the instances.
>> >
>> >
>> > I can confirm it.
>> > Instance can not get ip address from dnsmasq when vhost_net module is
>> > loaded.
>> > http://www.linux-kvm.org/page/VhostNet   see Caveats link.
>> >
>> > When I use virtio for instances and vhost_net module is not loaded
>> > my instances lose network connectivity.
>> >
>> >>
>>
>> I actually have tg3 loaded, not bnx2.  I just realized they are
>> NetXtreme not II's
>>
>> 01:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5720
>> Gigabit Ethernet PCIe
>> 01:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5720
>> Gigabit Ethernet PCIe
>> 02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5720
>> Gigabit Ethernet PCIe
>> 02:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5720
>> Gigabit Ethernet PCIe
>>
>>
>> Eugene, looking at that caveat, I couldn't find a "solution", did you see
>> one?
>
> No. For now I am not using vhost_net module/virtio for production VMs. I
> am using realtek driver.
> But performance is really bad.
>
>

OK, I have a feeling I know at least how to "fix" the issue.  After
reading the entire thread, it seems to be 100% related to the
checksumming of dhcp in QEMU (which is broken).  Would a simple way to
fix this be to have puppet take the given DHCP IP, and then put it
into the interfaces file as a static IP?  From my understanding, this
is safe as the host server owns that IP until the instance dies.  As
long as it is not baked into the base AMI/QCOW2, this seems like the
only way to continue using KVM and not switch to Xen or such.



More information about the OpenStack-operators mailing list