Description of problem: I have second interface (eth1) which I use to communicate with compute nodes. I told to packstack to use it as OVS tunnel: CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1 CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-tun:eth1 It correctly set eth1 as type=OVSPort and configure the bridge. But if I need to rerun packstack again, packstack fails with ERROR : Error appeared during Puppet run: 209.132.184.9_neutron.pp Error: Local ip for ovs agent must be set when tunneling is enabled at /var/tmp/packstack/ad2105c5cc1e46388c4276f82f6f1957/modules/neutron/manifests/agents/ml2/ovs.pp:107 on node fed-cloud09.cloud.fedoraproject.org You will find full trace in log /var/tmp/packstack/20140918-102842-kQawIP/manifests/209.132.184.9_neutron.pp.log Where in log is: ^[[1;31mWarning: Config file /etc/puppet/hiera.yaml not found, using Hiera defaults^[[0m ^[[1;31mWarning: Scope(Class[Neutron::Server]): The sql_connection parameter is deprecated, use database_connection instead.^[[0m ^[[1;31mWarning: Scope(Class[Neutron::Plugins::Ml2]): enable_security_group is deprecated. Security is managed by the firewall_drive value in ::neutron::agents::ml2::ovs.^[[0m ^[[1;31mError: Local ip for ovs agent must be set when tunneling is enabled at /var/tmp/packstack/ad2105c5cc1e46388c4276f82f6f1957/modules/neutron/manifests/agents/ml2/ovs.pp:107 on node fed-cloud09.cloud.fedoraproject.org^[[0m ^[[1;31mError: Local ip for ovs agent must be set when tunneling is enabled at /var/tmp/packstack/ad2105c5cc1e46388c4276f82f6f1957/modules/neutron/manifests/agents/ml2/ovs.pp:107 on node fed-cloud09.cloud.fedoraproject.org^[[0m It is because that it expect that eth1 is up (which is) and have ip addr assigned (which is not, because it is OVSPort. If I need to rerun packstack now, I have to either reprovision machine or wipe openstack, which may leave ovsswitch leftovers, which several times cut my networking. Version-Release number of selected component (if applicable): openstack-packstack-puppet-2014.1.1-0.28.dev1238.el7.noarch openstack-packstack-2014.1.1-0.28.dev1238.el7.noarch How reproducible: deterministic Steps to Reproduce: 1. configure eth0 as external network, and eth1 as internal and set it as ovs tunnel 2. run packstack once 3. run packstack second time Actual results: Error: Local ip for ovs agent must be set when tunneling is enabled at /var/tmp/packstack/ad2105c5cc1e46388c4276f82f6f1957/modules/neutron/manifests/agents/ml2/ovs.pp:107 on node fed-cloud09.cloud.fedoraproject.org Expected results: No changes in networking, when networking configuration already match final state. Additional info: Full answer file is here: http://infrastructure.fedoraproject.org/cgit/ansible.git/tree/files/fedora-cloud/packstack-controller-answers.txt
If you are using tunnelled (gre, vxlan) tenant networks (which is what I see in the linked answer file) then you would not typically be adding eth1 to a bridge, and especially not to br-tun. OVS would create tunnel endpoints, and would connect these gre or vxlan tunnels to br-tun automatically.