<div dir="ltr">Hi Stuart,<div><br></div><div>As far as I can tell, this is the first time I hear about this problem.</div><div>I can't make any judgment with the details you've shared here, but I would initially focus on ovs, the kernel and their interactions.</div>
<div>For Neutron's l3 agent the only thing I can say is that it uses the conntrack module for doing SNAT on the default gateway and for managing floating IPs - but I guess that won't help you much.</div><div><br></div>
<div>I think the neutron community could do more to help you if we understand something more about your particular situation.</div><div>- You mentioned 43 nodes between compute and controllers, but a single "neutron router" (which I reckon it's the l3 agent). How many logical routers is that agent hosting? Are you able to share how many internal interfaces are connected to those routers?</div>
<div>The above is to just get an idea of the traffic passing through the l3 agent</div><div>- Have you noticed any other call counter spiking up? The one you mentioned seems to be called only by nf_nat_used_tuple which is actually used in a number of places.</div>
<div><br></div><div>Regards,</div><div>Salvatore</div><div><br></div><div>PS: If you have not already done so consider submitting this kind of questions also to <a href="http://ask.openstack.org">ask.openstack.org</a></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On 16 August 2014 18:12, Stuart Fox <span dir="ltr"><<a href="mailto:stuart@demonware.net" target="_blank">stuart@demonware.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">Hey neutron dev!</span><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Im having a serious problem with my neutron router getting spin locked in nf_conntrack_tuple_taken.</div>

<div style="font-family:arial,sans-serif;font-size:13px">Has anybody else experienced it?</div><div style="font-family:arial,sans-serif;font-size:13px">"perf top" shows nf_conntrack_tuple_taken at 75%</div><div style="font-family:arial,sans-serif;font-size:13px">

As the incoming request rate goes up, so nf_conntrack_tuple_taken runs very hot on CPU0 causing ksoftirqd/0 to run at 100%. At that point internal pings on the GRE network go sky high and its game over. Pinging from a vm to the subnet default gateway on the neutron goes from 0.2ms to 11s! pinging from the same vm to another vm in the same subnet stays constant at 0.2ms.</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Very much indicates to me that the neutron router is having serious problems.</div><div style="font-family:arial,sans-serif;font-size:13px">

No other part of the system seems under pressure.</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">ipv6 is disabled, and nf_conntrack_max/nf_conntrack_hash are set to 256k.</div>

<div style="font-family:arial,sans-serif;font-size:13px">We've tried the default 3.13 and the utopic 3.16 kernel (3.16 has lots of work on removing spinlocks around nf_conntrack). 3.16 survives a little longer but still gets in the same state</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Neutron router</div><div style="font-family:arial,sans-serif;font-size:13px">1 x Ubuntu 14.04/Icehouse 2014.1.1 on an ibm x3550 with 4 10G intel nics.</div>

<div style="font-family:arial,sans-serif;font-size:13px">eth0 - Mgt</div><div style="font-family:arial,sans-serif;font-size:13px">eth1 - GRE</div><div style="font-family:arial,sans-serif;font-size:13px">eth2 - Public</div>

<div style="font-family:arial,sans-serif;font-size:13px">eth3 - unusedĀ </div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Compute/controller nodes</div>

<div style="font-family:arial,sans-serif;font-size:13px">43 x Ubuntu 14.04/Icehouse 2014.1.1 ibm x240 flex blades with 4 emulex nics</div><div style="font-family:arial,sans-serif;font-size:13px">eth0 Mgt</div><div style="font-family:arial,sans-serif;font-size:13px">

eth2 GRE</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Any help very much appreciated!</div><div style="font-family:arial,sans-serif;font-size:13px">

Replace the l2/l3 functions with hardware is very much an option if thats a better solution.</div><div style="font-family:arial,sans-serif;font-size:13px">Im running out of time before my client decides to stay on AWS.</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">

BR,</div><div style="font-family:arial,sans-serif;font-size:13px">Stuart</div></div>
<br>_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br></blockquote></div><br></div>