<html 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=Windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Courier New";}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt">Hi Christian,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">In my experience, it is possible to perform in-place migration from ML2/LXB -> ML2/OVN, albeit with a shutdown or hard reboot of the instance(s) to complete the VIF plugging and some other needed operations.
 I have a very rough outline of required steps if you’re interested, but they’re geared towards an openstack-ansible based deployment. I’ll try to put a writeup together in the next week or two demonstrating the process in a multi-node environment; the only
 one I have done recently was an all-in-one.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">James Denton<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Rackspace Private Cloud<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Christian Rohmann <christian.rohmann@inovex.de><br>
<b>Date: </b>Monday, August 29, 2022 at 4:10 AM<br>
<b>To: </b>Slawek Kaplonski <skaplons@redhat.com>, openstack-discuss@lists.openstack.org <openstack-discuss@lists.openstack.org><br>
<b>Subject: </b>Re: [neutron] Switching the ML2 driver in-place from linuxbridge to OVN for an existing Cloud<o:p></o:p></span></p>
</div>
<div style="border:solid #9C6500 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt">
<p class="MsoNormal" style="line-height:12.0pt;background:#FFEB9C"><b><span style="color:#9C6500">CAUTION:</span></b><span style="color:black"> This message originated externally, please use caution when clicking on links or opening attachments!<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Thanks Slawek for your quick response!<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">On 23/08/2022 07:47, Slawek Kaplonski wrote:<o:p></o:p></span></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre><span style="color:#007CFF">1) Are the data models of the user managed resources abstract (enough) <o:p></o:p></span></pre>
<pre><span style="color:#007CFF">from the ML2 used?<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">So would the composition of a router, a network, some subnets, a few <o:p></o:p></span></pre>
<pre><span style="color:#007CFF">security group and a few instances in a project just result in a <o:p></o:p></span></pre>
<pre><span style="color:#007CFF">different instantiation of packet handling components,<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">but be otherwise transparent to the user?<o:p></o:p></span></pre>
</blockquote>
<pre>Yes, data models are the same so all networks, routers, subnets will be the same but implemented differently by different backend.<o:p></o:p></pre>
<pre>The only significant difference may be network types as OVN works mostly with Geneve tunnel networks and with LB backend You are using VXLAN IIUC your email.<o:p></o:p></pre>
</blockquote>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">That is reassuring. Yes we currently use VXLAN. But even with the same type of tunneling, I suppose the networks and their IDs will not align to form a proper layer 2 domain,<br>
not even talking about all the other services like DHCP or metadata. See next question about my idea to at least have some gradual switchover.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
</div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre><span style="color:#007CFF">2) What could be possible migration strategies?<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"><o:p> </o:p></span></pre>
<pre><span style="color:#007CFF">[...] Or project by project by changing the network agents over<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">to nodes already running OVN?<o:p></o:p></span></pre>
</blockquote>
<pre>Even if You will keep vxlan networks with OVN backend (support is kind of limited really) You will not be able to have tunnels established between nodes with different backends so there will be no connectivity between VMs on hosts with different backends.<o:p></o:p></pre>
</blockquote>
<p>I was more thinking to move all of a projects resources to network nodes (and hypervisors) which already run OVN. So split the cloud in two classes of machines, one set unchanged running Linuxbridge and the other<br>
in OVN mode. To migrate "a project" all agents of that projects routers and networks will be changed over to agents running on OVN-powered nodes....<br>
So this would be a hard cut-over, but limited to a single project. In alternative to replacing all of the network agents on all nodes and for all projects at the same time.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Wouldn't that work  - in theory - or am I missing something obvious here?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre>Has anybody ever done something similar or heard about this being done <o:p></o:p></pre>
<pre>anywhere?<o:p></o:p></pre>
</blockquote>
<pre><o:p> </o:p></pre>
<pre>I don't know about anyone who did that but if there is someone, I would be happy to hear about how it was done and how it went :)<o:p></o:p></pre>
</blockquote>
<p>We will certainly share our story - if we live to talk about it ;-)<o:p></o:p></p>
<p><o:p> </o:p></p>
<p><o:p> </o:p></p>
<p>Thanks again,<br>
With kind regards<o:p></o:p></p>
<p><o:p> </o:p></p>
<p>Christian<o:p></o:p></p>
</div>
</div>
</body>
</html>