[ovirt-users] Jumbo Frames

Phil Daws uxbod at splatnix.net
Sat Nov 22 11:55:32 UTC 2014


I think it should be something like:

def addMTU(interface, mtusize):
    mtu = interface.createElement('mtu')
    add_attributes(mtu, 'size')
    mtu.setAttribute('size', mtusize)

def main():

    mtusize = os.environ.get('extnet_mtu')

    if mtusize is not None:
       doc = hooking.read_domxml()
       addMTU(doc, mtusize)
       hooking.write_domxml(doc)


----- Original Message -----
From: "Antoni Segura Puimedon" <asegurap at redhat.com>
To: "Phil Daws" <uxbod at splatnix.net>
Cc: "users" <users at ovirt.org>
Sent: Friday, 21 November, 2014 11:40:10 AM
Subject: Re: [ovirt-users] Jumbo Frames



----- Original Message -----
> From: "Phil Daws" <uxbod at splatnix.net>
> To: "users" <users at ovirt.org>
> Sent: Friday, November 21, 2014 11:45:10 AM
> Subject: Re: [ovirt-users] Jumbo Frames
> 
> Hmm, if an property does not already exist how does one add it ?
> 
> def replaceMTU(interface, newmtu):
>     mtu = interface.getElementsByTagName('mtu')[0]
>     if not mtu.hasAttribute('size'):
>       mtu.setAttribute('mtu size', newmtu)
> 
> 
> def main():
>     newmtu = os.environ.get('extnet_mtu')
> 
> 
> if newmtu is not None:
>         doc = hooking.read_domxml()
>         interface, = doc.getElementsByTagName('interface')
>         replaceMTU(interface, newmtu)
>         hooking.write_domxml(doc)
> 
> When I test this code it throws and error:
> 
> mtu = interface.getElementsByTagName('mtu')[0]
> IndexError: list index out of range
> 
> so somehow I need to detect that element needs to be set.

Could you please post how the libvirt xml should look like after the
current hook (if it supported setting the mtu?

> 
> Thanks, Phil
> 
> ----- Original Message -----
> From: "Phil Daws" <uxbod at splatnix.net>
> To: "users" <users at ovirt.org>
> Sent: Friday, 21 November, 2014 10:16:48 AM
> Subject: Re: [ovirt-users] Jumbo Frames
> 
> works with:
> 
> engine-config -s
> CustomDeviceProperties='{type=interface;prop={extnet_ovs=^[a-zA-Z0-9_
> ---]+(:[a-zA-Z0-9_ ---]+|)$;extnet_mtu=^[a-zA-Z0-9_ ---]+(:[a-zA-Z0-9_
> ---]+|)$}};'
> 
> Now just need to sort out the Python code ;)
> 
> ----- Original Message -----
> From: "Phil Daws" <uxbod at splatnix.net>
> To: "users" <users at ovirt.org>
> Sent: Friday, 21 November, 2014 10:01:23 AM
> Subject: Re: [ovirt-users] Jumbo Frames
> 
> Ah, it looks like I need to the MTU on the underlying vnet interface
> therefore should be able to extend the hook to include <mtu size="9000"/>.
> 
> Have tried to add an additional property using:
> 
> CustomDeviceProperties='{type=interface;prop={extnet_ovs=^[a-zA-Z0-9_
> ---]+(:[a-zA-Z0-9_ ---]+|)$};{extnet_mtu=^[a-zA-Z0-9_ ---]+(:[a-zA-Z0-9_
> ---]+|)$}};'
> 
> but it fails with the following error:
> 
> Cannot set value {type=interface;prop={extnet_ovs=^[a-zA-Z0-9_
> ---]+(:[a-zA-Z0-9_ ---]+|)$};{extnet_mtu=^[a-zA-Z0-9_ ---]+(:[a-zA-Z0-9_
> ---]+|)$}}; to key CustomDeviceProperties. Invalid syntax, custom device
> properties specification should conform to
> \{type=(disk|interface|video|sound|controller|balloon|channel|redir|console|rng|smartcard|watchdog);prop=\{((([a-z_A-Z0-9])+)=(([^;])*)(;(([a-z_A-Z0-9])+)=(([^;])*))*;?)?\}\}[;]?
> 
> I did try:
> 
> CustomDeviceProperties='{type=interface;prop={extnet_ovs=^[a-zA-Z0-9_
> ---]+(:[a-zA-Z0-9_ ---]+|)$};prop={extnet_mtu=^[a-zA-Z0-9_
> ---]+(:[a-zA-Z0-9_ ---]+|)$}};'
> 
> but that just gave me a new property of 'prop' :)
> 
> Any help appreciated please.
> 
> Thanks, Phil
> 
> ----- Original Message -----
> From: "Phil Daws" <uxbod at splatnix.net>
> To: "Dan Yasny" <dyasny at gmail.com>
> Cc: "users" <users at ovirt.org>
> Sent: Friday, 21 November, 2014 8:49:51 AM
> Subject: Re: [ovirt-users] Jumbo Frames
> 
> Hello Dan:
> 
> We are using OVS for SFlow and OSPF functionality.  You can see that the
> bridge was correctly set:
> 
> ovirtmgmt: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 9000
> 
> Very odd as OVS is unaware of whether its jumbo frames or not.
> 
> Thanks, Phil
> 
> ----- Original Message -----
> From: "Dan Yasny" <dyasny at gmail.com>
> To: "Phil Daws" <uxbod at splatnix.net>
> Cc: "users" <users at ovirt.org>
> Sent: Friday, 21 November, 2014 1:39:32 AM
> Subject: Re: [ovirt-users] Jumbo Frames
> 
> Why do you use OVS at all? If you have VLANs, all you need is to tag the mgmt
> traffic, and create a VM traffic VLAN with a different MTU. The bridge and
> underlying NICs will have MTU=9000 and the VM bridge will have MTU=1500
> 
> On Thu, Nov 20, 2014 at 7:40 PM, Phil Daws < uxbod at splatnix.net > wrote:
> 
> 
> Hello:
> 
> am really enjoying oVirt but have now hit an issue with iSCSI. As there is
> only one NIC in the host I have had to enable an MTU of 9000 on ovirtmgmt.
> Then have vNIC profiles on that interface which are using a custom hook for
> Openvswitch. I have created a specific vLAN for iSCSI traffic and on the
> initiator and targets have set their respective interface MTUs to be 9000.
> When I connect to a LUN it is timing out straight away with a 1011 error. If
> I drop the MTU back to 1500 all works okay. This is all fine on my other
> KVM, non-oVirt, system so am wondering if I have missed a step ?
> 
> Thanks, Phil
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
> 
> 
> 
> 
> 
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
> 



More information about the Users mailing list