<div>Hi, Kyle</div><div><br></div><span style="line-height: 1.5;">> </span><span style="line-height: 1.5;">This is likely due to this bug [1] which was fixed in Juno. On agent</span><br>><span style="line-height: 1.5;">restart, all flows are reprogrammed. We do this to ensure that</span><br>><span style="line-height: 1.5;">everything is reprogrammed correctly and no stale flows are left.</span><br><div><includetail><div> </div><div>If the neutron-openvswitch-agent restarts , the exist flows should not be <span style="line-height: 1.5;">reprogrammed because</span></div><div><span style="line-height: 1.5;">this will cause the n</span>etwork failure<span style="line-height: 1.5;"> be </span><span style="line-height: 1.5;">perceived by the end-users.</span></div><div><span style="line-height: 1.5;"><br></span></div><div>And in <span style="line-height: 1.5;">setup_tunnel_br/setup_physical_br/setup_intergration_br, </span>clear<span style="line-height: 1.5;"> all flows is not </span></div><div>necessary because the flows will be synchronized by scan_ports function.</div><div><br></div><div>So I think we should not call <span style="line-height: 1.5;">remove_all_flows in </span><span style="line-height: 1.5;">setup_tunnel_br/setup_physical_br/setup_intergration_br.</span></div><div><span style="line-height: 1.5;"><br></span></div><div><span style="line-height: 1.5;">Besides, delete port operations in </span><span style="line-height: 1.5;">setup_tunnel_br/setup_physical_br/setup_intergration_br should also be c</span><span style="line-height: 1.5;">ommented for the same reason.</span></div><div><br></div><div><br></div><div>Zebra</div><div><br></div></includetail></div><div><includetail><div style="font:Verdana normal 14px;color:#000;"><div style="FONT-SIZE: 12px;FONT-FAMILY: Arial Narrow;padding:2px 0 2px 0;">------------------ Original ------------------</div><div style="FONT-SIZE: 12px;background:#efefef;padding:8px;"><div id="menu_sender"><b>From: </b> "Kyle Mestery"<mestery@mestery.com>;</div><div><b>Date: </b> Tue, Oct 28, 2014 09:00 PM</div><div><b>To: </b> "OpenStack Development Mailing List (not for usage questions)"<openstack-dev@lists.openstack.org>; <wbr></div><div></div><div><b>Subject: </b> Re: [openstack-dev] [neutron] Clear all flows when ovs agent start?why and how avoid?</div></div><div> </div>On Mon, Oct 27, 2014 at 10:01 PM, Damon Wang <damon.devops@gmail.com> wrote:<br>> Hi all,<br>><br>> We have suffered a long down time when we upgrade our public cloud's neutron<br>> into the latest version (close to Juno RC2), for ovs-agent cleaned all flows<br>> in br-tun when it start.<br>><br>This is likely due to this bug [1] which was fixed in Juno. On agent<br>restart, all flows are reprogrammed. We do this to ensure that<br>everything is reprogrammed correctly and no stale flows are left.<br><br>[1] https://bugs.launchpad.net/tripleo/+bug/1290486<br>> I find our current design is remove all flows then add flow by entry, this<br>> will cause every network node will break off all tunnels between other<br>> network node and all compute node.<br>><br>> ( plugins.openvswitch.agent.ovs_neutron_agent.OVSNeutronAgent.__init__ -><br>> plugins.openvswitch.agent.ovs_neutron_agent.OVSNeutronAgent#setup_tunnel_br<br>> :<br>> self.tun_br.remove_all_flows() )<br>><br>> Do we have any mechanism or ideas to avoid this, or should we rethink<br>> current design? Welcome comments<br>><br>Perhaps a way around this would be to add a flag on agent startup<br>which would have it skip reprogramming flows. This could be used for<br>the upgrade case.<br><br>> Wei Wang<br>><br>> _______________________________________________<br>> OpenStack-dev mailing list<br>> OpenStack-dev@lists.openstack.org<br>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev<br>><br><br>_______________________________________________<br>OpenStack-dev mailing list<br>OpenStack-dev@lists.openstack.org<br>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</div><!--<![endif]--></includetail></div>