<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle18
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:567768455;
        mso-list-type:hybrid;
        mso-list-template-ids:-267362796 -125155252 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Calibri",sans-serif;
        mso-fareast-font-family:Calibri;
        mso-bidi-font-family:"Times New Roman";}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l1
        {mso-list-id:1952977116;
        mso-list-type:hybrid;
        mso-list-template-ids:279237206 -1639158848 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Calibri",sans-serif;
        mso-fareast-font-family:Calibri;
        mso-bidi-font-family:"Times New Roman";}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Hello,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Thanks for answers they really helped us to understand more of the insights.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>So to summarize a bit: <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>It’s possible to use different type drivers in a single Openstack setup as long as a network is created with just one specific type driver.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>The nova scheduler is not aware of the different type drivers, I think this can be fixed by creating availability zones/aggregates.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>With this information it sounds doable. Anything we are missing?<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Cheers<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'>Chris<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><b><span style='font-size:11.0pt;font-family:"Calibri",sans-serif'>From:</span></b><span style='font-size:11.0pt;font-family:"Calibri",sans-serif'> Kevin Benton [mailto:kevin@benton.pub] <br><b>Sent:</b> Wednesday, November 02, 2016 03:19<br><b>To:</b> Neil Jerram <neil@tigera.io><br><b>Cc:</b> Remo Mattei <remo@italy1.com>; Chris <contact@progbau.de>; openstack@lists.openstack.org; Soputhi Sea <puthi@live.com><br><b>Subject:</b> Re: [Openstack] Mixed ml2 drivers in single Openstack setup<o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>>- If you configure multiple type drivers, the first one will always be used, subject to resource availability. E.g. with 'vlan,vxlan', you would only start using VXLAN if all 4094 VLANs were already in us.<o:p></o:p></p><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Not quite. It will only use a type driver automatically if it's in 'tenant_network_types'. You can have all the type drivers you want configured in 'type_drivers' and they will only be available to admins who manually specify the type in a network creation request.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>So if you wanted to allow the creation of new networks and set them to a specific type while leaving the old networks untouched, you would just remove 'flat' from the 'tenant_network_types' option.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>>- One issue that I suspect to be lurking is: what if the L3 plugin/agent that you need for a port - e.g. to map a floating IP onto it - depends on the mechanism driver that is used to bind that port?<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>The reference L3 plugin doesn't have a problem with this because it's not the L3 agent's responsibility to do L2 wiring for its ports. It just creates the ports and lets the L2 agent (or other mech driver) deal with wiring the VIFs.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>It's not clear in the original email, but if the original flat networks are not available to the new compute nodes, you will encounter issues if you try to boot a VM onto one of the flat networks and it gets scheduled to a new compute node. It will result in a binding failure (assuming the vendor ML2 driver was written correctly).<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Currently, Nova scheduling doesn't account for networks that aren't available to every compute node in the datacenter. So if the intention is to have the flat network available to the old compute nodes, and then a different network available to the new compute nodes, it's not really going to work.<o:p></o:p></p></div></div><div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>On Tue, Nov 1, 2016 at 5:35 AM, Neil Jerram <<a href="mailto:neil@tigera.io" target="_blank">neil@tigera.io</a>> wrote:<o:p></o:p></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>In principle... In the fully general case I think there are issues lurking, so it would indeed be interesting to hear about real experience from people who have done this. <o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>FWIW here's what I think I understand about mixed ML2 configurations:<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>- We're talking about 'type' drivers and 'mechanism' drivers. Type drivers are about how instance data is transported between compute hosts. Mechanism drivers are about what happens on each compute host to connect instance data into that ('type') system.<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>- If you configure multiple type drivers, the first one will always be used, subject to resource availability. E.g. with 'vlan,vxlan', you would only start using VXLAN if all 4094 VLANs were already in us.<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>- OTOH if you configure multiple mechanism drivers, they will be asked in turn if they want to handle connecting up (aka binding) each new Neutron port. So different mechanism drivers can in principle handle different kinds of port.<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>- One issue that I suspect to be lurking is: what if the L3 plugin/agent that you need for a port - e.g. to map a floating IP onto it - depends on the mechanism driver that is used to bind that port?<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>I hope those points are useful to start discussing this interesting topic further. <o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'>    Neil <o:p></o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='background:white'><span lang=EN-GB style='font-family:"Calibri",sans-serif;color:#1F497D'><o:p> </o:p></span></p></div><table class=MsoNormalTable border=0 cellpadding=0 width="100%" style='width:100.0%;background:white;border-spacing:0px'><tr><td style='padding:.75pt .75pt .75pt .75pt;font-size:initial;text-align:initial'><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><div><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>From: </span></b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Remo Mattei<o:p></o:p></span></p></div><div><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Sent: </span></b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Tuesday, 1 November 2016 06:09<o:p></o:p></span></p></div><div><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>To: </span></b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Chris<o:p></o:p></span></p></div><div><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Cc: </span></b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'><a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a>; Soputhi Sea<o:p></o:p></span></p></div><div><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Subject: </span></b><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>Re: [Openstack] Mixed ml2 drivers in single Openstack setup<o:p></o:p></span></p></div></div></td></tr></table><div><div><p class=MsoNormal style='background:white'><span lang=EN-GB><o:p> </o:p></span></p><div id="m_-7080103415799656410_originalContent"><div><div><p class=MsoNormal style='background:white'><span lang=EN-GB>You can with ml2 mix plugins. You will have to look at the options but it is designed for that. <o:p></o:p></span></p></div><p class=MsoNormal style='background:white'><span lang=EN-GB><br>Sent from my iPad<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-bottom:12.0pt;background:white'><span lang=EN-GB><br>On Oct 31, 2016, at 9:08 PM, Chris <<a href="mailto:contact@progbau.de" target="_blank">contact@progbau.de</a>> wrote:<o:p></o:p></span></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>Hello,<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>We currently use the flat ml2 driver in our Openstack setup (around 500 nodes). <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>We now want to change to a network vendor specific ml2 driver. So the legacy compute nodes will use the flat network and compute nodes added in the future will use the network based on the new ml2 vendor plugin.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>Question is it possible to mix two network setups like described above? We don’t use regions could this be a possible solution?<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>Any help and answer appreciated.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>Cheers<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;background:white'><span lang=EN-GB>Chris<o:p></o:p></span></p></div><p class=MsoNormal style='background:white'><span lang=EN-GB>!DSPAM:1,581818fd210478584850555! <o:p></o:p></span></p></div></blockquote><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='background:white'><span lang=EN-GB>_______________________________________________<br>Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>Post to     : <a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a><br>Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br><br><br>!DSPAM:1,581818fd210478584850555!<o:p></o:p></span></p></div></blockquote><p class=MsoNormal style='background:white'><span lang=EN-GB><o:p> </o:p></span></p></div></div></div></div><p class=MsoNormal style='margin-bottom:12.0pt'><br>_______________________________________________<br>Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>Post to     : <a href="mailto:openstack@lists.openstack.org">openstack@lists.openstack.org</a><br>Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><o:p></o:p></p></blockquote></div><p class=MsoNormal><o:p> </o:p></p></div></div></body></html>