floatingip and provider networks on icehouse

icehouse update 2 (2014.1.2)

Most of my OpenStack deployments are based on provider networks, networks which gateway is outside OpenStack. Most of the time this is done for simplicity, people already have network gear and policies and blah blah blah. It's a cool way to deploy neutron.

In order to have more than one provider network in the same netnode you have to run multiple l3 agents , which is a minor inconvenience.

Some time ago I've learn that was legacy :O, since late Havana an l3-agent can run many external/provider networks. (in the last 2 paragraphs external and provider network were used as synonyms, which kinda are)

if you run a pure provider network, your l3-agent.ini will look like this (openvswitch plugin)

interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver
gateway_external_network_id =
external_network_bridge =

I was happy by now, but not on my lab, there I run everything. provider, tenant and external networks.
all of them in the same cloud, vlan, gre and flat (unfortunately without more nodes I can't mix gre and vxlan).

During my epic lab-rebuild I had issues binding the gw port to the external network,
reading the source, and git blame, I found this bug,
which has this comment
I thought, 'nooo I cannot be' then I replaced my neutron db (which was already been dropped) running on PostgreSQL by a new empty DB running on MySQL.
The binding port issues disappear, WTF!!!.

I will continue on a second post, stay tunned