Actually, it is probably not the latest release now, I have been working on this for a while.
This post will be updated/deleted/re-added a lot as I work through it. Maybe a final post on what I did wrong for others to avoid when I figure it out.
I installed the RDO release using packstack (not a default install, I generated and edited heavily the answers file) and made a lot of tweaks to the config as recomended by a jolly old ‘here is how it works’ tutorial in training videos on safari online.
Lots of tweaks for vxlan and the ml3 configuration, nova networking disabled and only neutron used, no local or flat networking as I want to figure out vxlan and openvswitch.
Initial problem was instances unable to contact metadata service
That issue was… if when launching an instance you allocate an internal and external network to the instance it just cannot contact the metadata service. If you only assign an internal tenant network it will contact the metadata service. The problem was repeatable with both the cirros test image and the F23 cloud image.
Note: I had enabled auto-allocation so an external ip was assigned to the instances tested if the external network was assigned to the instance.
So launching a new F23 cloud image or Cirros instance with only the internal network assigned no problems contacting the metadata service, and once running I associated a floating ip with the instance, shut it down and restarted the instance. It was still able to contact the metadata service.
That is still possibly an issue as the auto-allocation of an ip when the external net was also attached to the instance at creation time worked correctly. Query: does it screw up the instance network routing ?.
Anyway, never assigning the external network but just using floating ips still works.
Lack of external connectivity using vxlan
That was user (my) error. A type in one of the config files somewhere set the br-tun vxlan port remote_ip to 176… instead of 172… which is used everywhere else, like on the actual bridge for the interface.
ovs-vsctl does not have an “update” function; deleted and re-added the port to fix that.
[root@region1server1 ~]# ovs-vsctl del-port vxlan-b01000ac [root@region1server1 ~]# ovs-vsctl add-port br-tun vxlan-b01000ac -- set Interface vxlan-b01000ac type=vxlan options:{df_default="true",in_key=flow,local_ip="172.16.0.172",out_key=flow,remote_ip="172.6.0.172"}
That allowed the qrouter namespace to ping the external network ip-address.
However the ping test did not survive a reboot even though the config came back with my changes… so still troubleshooting here. Damb, so close.