Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Packstack Stein - Cannot Detect Tunnel Interface

Hello, I am attempting to use Packstack with an answer file to install Openstack on two nodes -- a controller/network node and a compute node. I installed Packstack for Stein new today.

When I run packstack with the answer file, it gets to the step: "Preparing Neutron API entries" and then errors out. The error reads: ERROR : "Couldn't detect ipaddress of interface ens2f1 on node 10.57.38.123"

The controller node management IP is 10.57.38.123 (on bond0). I am trying to use ens2f1 for the OVN tunnel. It's IP address is 10.57.37.123 (verified on the server).

I will post the networking part of the answer file and the setup log with failure below. The entire answer file won't post correctly.


# Password to use for OpenStack Networking (neutron) to authenticate
# with the Identity service.
CONFIG_NEUTRON_KS_PW=##

# The password to use for OpenStack Networking to access the
# database.
CONFIG_NEUTRON_DB_PW=##

# The name of the Open vSwitch bridge (or empty for linuxbridge) for
# the OpenStack Networking L3 agent to use for external  traffic.
# Specify 'provider' if you intend to use a provider network to handle
# external traffic.
CONFIG_NEUTRON_L3_EXT_BRIDGE=br-ex

# Password for the OpenStack Networking metadata agent.
CONFIG_NEUTRON_METADATA_PW=91f9fac7af944e61

# Specify 'y' to install OpenStack Networking's Load-Balancing-
# as-a-Service (LBaaS). ['y', 'n']
CONFIG_LBAAS_INSTALL=n

# Specify 'y' to install OpenStack Networking's L3 Metering agent
# ['y', 'n']
CONFIG_NEUTRON_METERING_AGENT_INSTALL=y

# Specify 'y' to configure OpenStack Networking's Firewall-
# as-a-Service (FWaaS). ['y', 'n']
CONFIG_NEUTRON_FWAAS=n

# Specify 'y' to configure OpenStack Networking's VPN-as-a-Service
# (VPNaaS). ['y', 'n']
CONFIG_NEUTRON_VPNAAS=n

# Comma-separated list of network-type driver entry points to be
# loaded from the neutron.ml2.type_drivers namespace. ['local',
# 'flat', 'vlan', 'gre', 'vxlan', 'geneve']
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vxlan,flat,geneve

# Comma-separated, ordered list of network types to allocate as
# tenant networks. The 'local' value is only useful for single-box
# testing and provides no connectivity between hosts. ['local',
# 'vlan', 'gre', 'vxlan', 'geneve']
CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vxlan,geneve

# Comma-separated ordered list of networking mechanism driver entry
# points to be loaded from the neutron.ml2.mechanism_drivers
# namespace. ['logger', 'test', 'linuxbridge', 'openvswitch',
# 'hyperv', 'ncs', 'arista', 'cisco_nexus', 'mlnx', 'l2population',
# 'sriovnicswitch', 'ovn']
CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=ovn

# Comma-separated list of physical_network names with which flat
# networks can be created. Use * to allow flat networks with arbitrary
# physical_network names.
CONFIG_NEUTRON_ML2_FLAT_NETWORKS=*

# Comma-separated list of <physical_network>:<vlan_min>:<vlan_max> or
# <physical_network> specifying physical_network names usable for VLAN
# provider and tenant networks, as well as ranges of VLAN tags on each
# available for allocation to tenant networks.
CONFIG_NEUTRON_ML2_VLAN_RANGES=

# Comma-separated list of <tun_min>:<tun_max> tuples enumerating
# ranges of GRE tunnel IDs that are available for tenant-network
# allocation. A tuple must be an array with tun_max +1 - tun_min >
# 1000000.
CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES=

# Comma-separated list of addresses for VXLAN multicast group. If
# left empty, disables VXLAN from sending allocate broadcast traffic
# (disables multicast VXLAN mode). Should be a Multicast IP (v4 or v6)
# address.
CONFIG_NEUTRON_ML2_VXLAN_GROUP=

# Comma-separated list of <vni_min>:<vni_max> tuples enumerating
# ranges of VXLAN VNI IDs that are available for tenant network
# allocation. Minimum value is 0 and maximum value is 16777215.
CONFIG_NEUTRON_ML2_VNI_RANGES=10:100

# Name of the L2 agent to be used with OpenStack Networking.
# ['linuxbridge', 'openvswitch', 'ovn']
CONFIG_NEUTRON_L2_AGENT=ovn

# Comma-separated list of interface mappings for the OpenStack
# Networking ML2 SRIOV agent. Each tuple in the list must be in the
# format <physical_network>:<net_interface>. Example:
# physnet1:eth1,physnet2:eth2,physnet3:eth3.
CONFIG_NEUTRON_ML2_SRIOV_INTERFACE_MAPPINGS=

# Comma-separated list of interface mappings for the OpenStack
# Networking linuxbridge plugin. Each tuple in the list must be in the
# format <physical_network>:<net_interface>. Example:
# physnet1:eth1,physnet2:eth2,physnet3:eth3.
CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS=

# Comma-separated list of bridge mappings for the OpenStack
# Networking Open vSwitch plugin. Each tuple in the list must be in
# the format <physical_network>:<ovs_bridge>. Example: physnet1:br-
# eth1,physnet2:br-eth2,physnet3:br-eth3
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=extnet:

# Comma-separated list of colon-separated Open vSwitch
# <bridge>:<interface> pairs. The interface will be added to the
# associated bridge. If you desire the bridge to be persistent a value
# must be added to this directive, also
# CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS must be set in order to create
# the proper port. This can be achieved from the command line by
# issuing the following command: packstack --allinone --os-neutron-
# ovs-bridge-mappings=ext-net:br-ex --os-neutron-ovs-bridge-interfaces
# =br-ex:eth0
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=

# Comma-separated list of Open vSwitch bridges that must be created
# and connected to interfaces in compute nodes when flat or vlan type
# drivers are enabled. These bridges must exist in
# CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS and
# CONFIG_NEUTRON_OVS_BRIDGE_IFACES. Example: --os-neutron-ovs-bridges-
# compute=br-vlan --os-neutron-ovs-bridge-mappings="extnet:br-
# ex,physnet1:br-vlan" --os-neutron-ovs-bridge-interfaces="br-ex:eth1
# ,br-vlan:eth2"
CONFIG_NEUTRON_OVS_BRIDGES_COMPUTE=

# Name of physical network used for external network when enabling
# CONFIG_PROVISION_DEMO. Name must be one of the included in
# CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS. Example: --os-neutron-ovs-
# bridge-mappings="extnet:br-ex,physnet1:br-vlan" --os-neutron-ovs-
# bridge-interfaces="br-ex:eth1,br-vlan:eth2" --os-neutron-ovs-
# external-physnet="extnet"
CONFIG_NEUTRON_OVS_EXTERNAL_PHYSNET=

# Interface for the Open vSwitch tunnel. Packstack overrides the IP
# address used for tunnels on this hypervisor to the IP found on the
# specified interface (for example, eth1).
CONFIG_NEUTRON_OVS_TUNNEL_IF=

# Comma-separated list of subnets (for example,
# 192.168.10.0/24,192.168.11.0/24) used for sending tunneling packets.
# This is used to configure IP filtering to accept tunneling packets
# from these subnets instead of specific IP addresses of peer nodes.
# This is useful when you add existing nodes to EXCLUDE_SERVERS
# because, in this case, packstack cannot modify the IP filtering of
# the existing nodes.
CONFIG_NEUTRON_OVS_TUNNEL_SUBNETS=

# VXLAN UDP port.
CONFIG_NEUTRON_OVS_VXLAN_UDP_PORT=4789

# Comma-separated list of bridge mappings for the OpenStack
# Networking Open Virtual Network plugin. Each tuple in the list must
# be in the format <physical_network>:<ovs_bridge>. Example: physnet1
# :br-eth1,physnet2:br-eth2,physnet3:br-eth3
CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS=extnet:br-ex

# Comma-separated list of colon-separated Open vSwitch
# <bridge>:<interface> pairs. The interface will be added to the
# associated bridge. If you desire the bridge to be persistent a value
# must be added to this directive, also
# CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS must be set in order to create
# the proper port. This can be achieved from the command line by
# issuing the following command: packstack --allinone --os-neutron-
# ovn-bridge-mappings=ext-net:br-ex --os-neutron-ovn-bridge-interfaces
# =br-ex:eth0
CONFIG_NEUTRON_OVN_BRIDGE_IFACES=br-ex:ens2f0

# Comma-separated list of Open vSwitch bridges that must be created
# and connected to interfaces in compute nodes when flat or vlan type
# drivers are enabled. These bridges must exist in
# CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS and
# CONFIG_NEUTRON_OVN_BRIDGE_IFACES. Example: --os-neutron-ovn-bridges-
# compute=br-vlan --os-neutron-ovn-bridge-mappings="extnet:br-
# ex,physnet1:br-vlan" --os-neutron-ovn-bridge-interfaces="br-ex:eth1
# ,br-vlan:eth2"
CONFIG_NEUTRON_OVN_BRIDGES_COMPUTE=br-ex

# Name of physical network used for external network when enabling
# CONFIG_PROVISION_DEMO. Name must be one of the included in
# CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS. Example: --os-neutron-ovn-
# bridge-mappings="extnet:br-ex,physnet1:br-vlan" --os-neutron-ovn-
# bridge-interfaces="br-ex:eth1,br-vlan:eth2" --os-neutron-ovn-
# external-physnet="extnet"
CONFIG_NEUTRON_OVN_EXTERNAL_PHYSNET=extnet

# Interface for the Open vSwitch tunnel. Packstack overrides the IP
# address used for tunnels on this hypervisor to the IP found on the
# specified interface (for example, eth1).
CONFIG_NEUTRON_OVN_TUNNEL_IF=ens2f1

# Comma-separated list of subnets (for example,
# 192.168.10.0/24,192.168.11.0/24) used for sending tunneling packets.
# This is used to configure IP filtering to accept tunneling packets
# from these subnets instead of specific IP addresses of peer nodes.
# This is useful when you add existing nodes to EXCLUDE_SERVERS
# because, in this case, packstack cannot modify the IP filtering of
# the existing nodes.
CONFIG_NEUTRON_OVN_TUNNEL_SUBNETS=

2019-07-08 16:53:19::INFO::shell::100::root:: [localhost] Executing script:
rm -rf /var/tmp/packstack/20190708-165319-xs4Vr0/manifests/*pp
2019-07-08 16:53:19::INFO::shell::100::root:: [10.57.38.123] Executing script:
mkdir -p ~/.ssh
chmod 500 ~/.ssh
grep 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org' ~/.ssh/authorized_keys > /dev/null 2>&1 || echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org >> ~/.ssh/authorized_keys
chmod 400 ~/.ssh/authorized_keys
restorecon -r ~/.ssh
2019-07-08 16:53:19::INFO::shell::100::root:: [10.57.38.240] Executing script:
mkdir -p ~/.ssh
chmod 500 ~/.ssh
grep 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org' ~/.ssh/authorized_keys > /dev/null 2>&1 || echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org >> ~/.ssh/authorized_keys
chmod 400 ~/.ssh/authorized_keys
restorecon -r ~/.ssh
2019-07-08 16:53:20::INFO::shell::100::root:: [10.57.38.123] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
2019-07-08 16:53:20::INFO::shell::49::root:: Executing command:
rpm -qa --qf='%{name}-%{version}-%{release}.%{arch}
' | grep centos-release-openstack
2019-07-08 16:53:20::INFO::shell::100::root:: [10.57.38.123] Executing script:
(rpm -q 'centos-release-openstack-stein' || yum -y install centos-release-openstack-stein) || true
2019-07-08 16:53:21::INFO::shell::49::root:: Executing command:
rpm -q rdo-release --qf='%{version}-%{release}.%{arch}
'
2019-07-08 16:53:21::INFO::shell::100::root:: [10.57.38.123] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
yum clean metadata
2019-07-08 16:53:21::INFO::shell::100::root:: [10.57.38.240] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
2019-07-08 16:53:21::INFO::shell::49::root:: Executing command:
rpm -qa --qf='%{name}-%{version}-%{release}.%{arch}
' | grep centos-release-openstack
2019-07-08 16:53:22::INFO::shell::100::root:: [10.57.38.240] Executing script:
(rpm -q 'centos-release-openstack-stein' || yum -y install centos-release-openstack-stein) || true
2019-07-08 16:53:22::INFO::shell::49::root:: Executing command:
rpm -q rdo-release --qf='%{version}-%{release}.%{arch}
'
2019-07-08 16:53:22::INFO::shell::100::root:: [10.57.38.240] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
yum clean metadata
2019-07-08 16:53:22::INFO::shell::100::root:: [10.57.38.123] Executing script:
yum install -y puppet hiera openssh-clients tar nc rubygem-json
yum update -y puppet hiera openssh-clients tar nc rubygem-json
rpm -q --whatprovides puppet
rpm -q --whatprovides hiera
rpm -q --whatprovides openssh-clients
rpm -q --whatprovides tar
rpm -q --whatprovides nc
rpm -q --whatprovides rubygem-json
2019-07-08 16:53:34::INFO::shell::100::root:: [10.57.38.123] Executing script:
mkdir -p /var/tmp/packstack
mkdir --mode 0700 /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46
mkdir --mode 0700 /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46/modules
mkdir --mode 0700 /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46/resources
2019-07-08 16:53:34::INFO::shell::100::root:: [10.57.38.123] Executing script:
facter -p
2019-07-08 16:53:35::INFO::shell::100::root:: [10.57.38.123] Executing script:
[[ -f /etc/hiera.yaml ]] && [[ ! -L /etc/puppet/hiera.yaml ]] && ln -s /etc/hiera.yaml /etc/puppet/hiera.yaml || echo "skipping creation of  hiera.yaml symlink"
sed -i 's;:datadir:.*;:datadir: /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46/hieradata;g' $(puppet config print hiera_config)
2019-07-08 16:53:36::INFO::shell::100::root:: [10.57.38.240] Executing script:
yum install -y puppet hiera openssh-clients tar nc rubygem-json
yum update -y puppet hiera openssh-clients tar nc rubygem-json
rpm -q --whatprovides puppet
rpm -q --whatprovides hiera
rpm -q --whatprovides openssh-clients
rpm -q --whatprovides tar
rpm -q --whatprovides nc
rpm -q --whatprovides rubygem-json
2019-07-08 16:53:42::INFO::shell::100::root:: [10.57.38.240] Executing script:
mkdir -p /var/tmp/packstack
mkdir --mode 0700 /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a
mkdir --mode 0700 /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a/modules
mkdir --mode 0700 /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a/resources
2019-07-08 16:53:43::INFO::shell::100::root:: [10.57.38.240] Executing script:
facter -p
2019-07-08 16:53:43::INFO::shell::100::root:: [10.57.38.240] Executing script:
[[ -f /etc/hiera.yaml ]] && [[ ! -L /etc/puppet/hiera.yaml ]] && ln -s /etc/hiera.yaml /etc/puppet/hiera.yaml || echo "skipping creation of  hiera.yaml symlink"
sed -i 's;:datadir:.*;:datadir: /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a/hieradata;g' $(puppet config print hiera_config)
2019-07-08 16:53:44::INFO::shell::100::root:: [localhost] Executing script:
ssh-keygen -t rsa -b 2048 -f "/var/tmp/packstack/20190708-165319-xs4Vr0/nova_migration_key" -N ""
2019-07-08 16:53:44::INFO::shell::100::root:: [localhost] Executing script:
ssh-keyscan 10.57.38.240
2019-07-08 16:53:44::ERROR::run_setup::1062::root:: Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/packstack/installer/run_setup.py", line 1057, in main
    _main(options, confFile, logFile)
  File "/usr/lib/python2.7/site-packages/packstack/installer/run_setup.py", line 681, in _main
    runSequences()
  File "/usr/lib/python2.7/site-packages/packstack/installer/run_setup.py", line 648, in runSequences
    controller.runAllSequences()
  File "/usr/lib/python2.7/site-packages/packstack/installer/setup_controller.py", line 81, in runAllSequences
    sequence.run(config=self.CONF, messages=self.MESSAGES)
  File "/usr/lib/python2.7/site-packages/packstack/installer/core/sequences.py", line 109, in run
    step.run(config=config, messages=messages)
  File "/usr/lib/python2.7/site-packages/packstack/installer/core/sequences.py", line 50, in run
    self.function(config, messages)
  File "/usr/lib/python2.7/site-packages/packstack/plugins/neutron_350.py", line 858, in create_manifests
    (iface, n_host))
KeyError: "Couldn't detect ipaddress of interface ens2f1 on node 10.57.38.123"

2019-07-08 16:53:44::INFO::shell::100::root:: [10.57.38.123] Executing script:
rm -rf /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46
2019-07-08 16:53:45::INFO::shell::100::root:: [10.57.38.240] Executing script:
rm -rf /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a

Packstack Stein - Cannot Detect Tunnel Interface

Hello, I am attempting to use Packstack with an answer file to install Openstack on two nodes -- a controller/network node and a compute node. I installed Packstack for Stein new today.

When I run packstack with the answer file, it gets to the step: "Preparing Neutron API entries" and then errors out. The error reads: ERROR : "Couldn't detect ipaddress of interface ens2f1 on node 10.57.38.123"

The controller node management IP is 10.57.38.123 (on bond0). I am trying to use ens2f1 for the OVN tunnel. It's IP address is 10.57.37.123 (verified on the server).

I will post the networking part of the answer file and the setup log with failure below. The entire answer file won't post correctly.


# Password to use for OpenStack Networking (neutron) to authenticate
# with the Identity service.
CONFIG_NEUTRON_KS_PW=##

# The password to use for OpenStack Networking to access the
# database.
CONFIG_NEUTRON_DB_PW=##

# The name of the Open vSwitch bridge (or empty for linuxbridge) for
# the OpenStack Networking L3 agent to use for external  traffic.
# Specify 'provider' if you intend to use a provider network to handle
# external traffic.
CONFIG_NEUTRON_L3_EXT_BRIDGE=br-ex

# Password for the OpenStack Networking metadata agent.
CONFIG_NEUTRON_METADATA_PW=91f9fac7af944e61

# Specify 'y' to install OpenStack Networking's Load-Balancing-
# as-a-Service (LBaaS). ['y', 'n']
CONFIG_LBAAS_INSTALL=n

# Specify 'y' to install OpenStack Networking's L3 Metering agent
# ['y', 'n']
CONFIG_NEUTRON_METERING_AGENT_INSTALL=y

# Specify 'y' to configure OpenStack Networking's Firewall-
# as-a-Service (FWaaS). ['y', 'n']
CONFIG_NEUTRON_FWAAS=n

# Specify 'y' to configure OpenStack Networking's VPN-as-a-Service
# (VPNaaS). ['y', 'n']
CONFIG_NEUTRON_VPNAAS=n

# Comma-separated list of network-type driver entry points to be
# loaded from the neutron.ml2.type_drivers namespace. ['local',
# 'flat', 'vlan', 'gre', 'vxlan', 'geneve']
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vxlan,flat,geneve

# Comma-separated, ordered list of network types to allocate as
# tenant networks. The 'local' value is only useful for single-box
# testing and provides no connectivity between hosts. ['local',
# 'vlan', 'gre', 'vxlan', 'geneve']
CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vxlan,geneve

# Comma-separated ordered list of networking mechanism driver entry
# points to be loaded from the neutron.ml2.mechanism_drivers
# namespace. ['logger', 'test', 'linuxbridge', 'openvswitch',
# 'hyperv', 'ncs', 'arista', 'cisco_nexus', 'mlnx', 'l2population',
# 'sriovnicswitch', 'ovn']
CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=ovn

# Comma-separated list of physical_network names with which flat
# networks can be created. Use * to allow flat networks with arbitrary
# physical_network names.
CONFIG_NEUTRON_ML2_FLAT_NETWORKS=*

# Comma-separated list of <physical_network>:<vlan_min>:<vlan_max> or
# <physical_network> specifying physical_network names usable for VLAN
# provider and tenant networks, as well as ranges of VLAN tags on each
# available for allocation to tenant networks.
CONFIG_NEUTRON_ML2_VLAN_RANGES=

# Comma-separated list of <tun_min>:<tun_max> tuples enumerating
# ranges of GRE tunnel IDs that are available for tenant-network
# allocation. A tuple must be an array with tun_max +1 - tun_min >
# 1000000.
CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES=

# Comma-separated list of addresses for VXLAN multicast group. If
# left empty, disables VXLAN from sending allocate broadcast traffic
# (disables multicast VXLAN mode). Should be a Multicast IP (v4 or v6)
# address.
CONFIG_NEUTRON_ML2_VXLAN_GROUP=

# Comma-separated list of <vni_min>:<vni_max> tuples enumerating
# ranges of VXLAN VNI IDs that are available for tenant network
# allocation. Minimum value is 0 and maximum value is 16777215.
CONFIG_NEUTRON_ML2_VNI_RANGES=10:100

# Name of the L2 agent to be used with OpenStack Networking.
# ['linuxbridge', 'openvswitch', 'ovn']
CONFIG_NEUTRON_L2_AGENT=ovn

# Comma-separated list of interface mappings for the OpenStack
# Networking ML2 SRIOV agent. Each tuple in the list must be in the
# format <physical_network>:<net_interface>. Example:
# physnet1:eth1,physnet2:eth2,physnet3:eth3.
CONFIG_NEUTRON_ML2_SRIOV_INTERFACE_MAPPINGS=

# Comma-separated list of interface mappings for the OpenStack
# Networking linuxbridge plugin. Each tuple in the list must be in the
# format <physical_network>:<net_interface>. Example:
# physnet1:eth1,physnet2:eth2,physnet3:eth3.
CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS=

# Comma-separated list of bridge mappings for the OpenStack
# Networking Open vSwitch plugin. Each tuple in the list must be in
# the format <physical_network>:<ovs_bridge>. Example: physnet1:br-
# eth1,physnet2:br-eth2,physnet3:br-eth3
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=extnet:

# Comma-separated list of colon-separated Open vSwitch
# <bridge>:<interface> pairs. The interface will be added to the
# associated bridge. If you desire the bridge to be persistent a value
# must be added to this directive, also
# CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS must be set in order to create
# the proper port. This can be achieved from the command line by
# issuing the following command: packstack --allinone --os-neutron-
# ovs-bridge-mappings=ext-net:br-ex --os-neutron-ovs-bridge-interfaces
# =br-ex:eth0
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=

# Comma-separated list of Open vSwitch bridges that must be created
# and connected to interfaces in compute nodes when flat or vlan type
# drivers are enabled. These bridges must exist in
# CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS and
# CONFIG_NEUTRON_OVS_BRIDGE_IFACES. Example: --os-neutron-ovs-bridges-
# compute=br-vlan --os-neutron-ovs-bridge-mappings="extnet:br-
# ex,physnet1:br-vlan" --os-neutron-ovs-bridge-interfaces="br-ex:eth1
# ,br-vlan:eth2"
CONFIG_NEUTRON_OVS_BRIDGES_COMPUTE=

# Name of physical network used for external network when enabling
# CONFIG_PROVISION_DEMO. Name must be one of the included in
# CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS. Example: --os-neutron-ovs-
# bridge-mappings="extnet:br-ex,physnet1:br-vlan" --os-neutron-ovs-
# bridge-interfaces="br-ex:eth1,br-vlan:eth2" --os-neutron-ovs-
# external-physnet="extnet"
CONFIG_NEUTRON_OVS_EXTERNAL_PHYSNET=

# Interface for the Open vSwitch tunnel. Packstack overrides the IP
# address used for tunnels on this hypervisor to the IP found on the
# specified interface (for example, eth1).
CONFIG_NEUTRON_OVS_TUNNEL_IF=

# Comma-separated list of subnets (for example,
# 192.168.10.0/24,192.168.11.0/24) used for sending tunneling packets.
# This is used to configure IP filtering to accept tunneling packets
# from these subnets instead of specific IP addresses of peer nodes.
# This is useful when you add existing nodes to EXCLUDE_SERVERS
# because, in this case, packstack cannot modify the IP filtering of
# the existing nodes.
CONFIG_NEUTRON_OVS_TUNNEL_SUBNETS=

# VXLAN UDP port.
CONFIG_NEUTRON_OVS_VXLAN_UDP_PORT=4789

# Comma-separated list of bridge mappings for the OpenStack
# Networking Open Virtual Network plugin. Each tuple in the list must
# be in the format <physical_network>:<ovs_bridge>. Example: physnet1
# :br-eth1,physnet2:br-eth2,physnet3:br-eth3
CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS=extnet:br-ex

# Comma-separated list of colon-separated Open vSwitch
# <bridge>:<interface> pairs. The interface will be added to the
# associated bridge. If you desire the bridge to be persistent a value
# must be added to this directive, also
# CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS must be set in order to create
# the proper port. This can be achieved from the command line by
# issuing the following command: packstack --allinone --os-neutron-
# ovn-bridge-mappings=ext-net:br-ex --os-neutron-ovn-bridge-interfaces
# =br-ex:eth0
CONFIG_NEUTRON_OVN_BRIDGE_IFACES=br-ex:ens2f0

# Comma-separated list of Open vSwitch bridges that must be created
# and connected to interfaces in compute nodes when flat or vlan type
# drivers are enabled. These bridges must exist in
# CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS and
# CONFIG_NEUTRON_OVN_BRIDGE_IFACES. Example: --os-neutron-ovn-bridges-
# compute=br-vlan --os-neutron-ovn-bridge-mappings="extnet:br-
# ex,physnet1:br-vlan" --os-neutron-ovn-bridge-interfaces="br-ex:eth1
# ,br-vlan:eth2"
CONFIG_NEUTRON_OVN_BRIDGES_COMPUTE=br-ex

# Name of physical network used for external network when enabling
# CONFIG_PROVISION_DEMO. Name must be one of the included in
# CONFIG_NEUTRON_OVN_BRIDGE_MAPPINGS. Example: --os-neutron-ovn-
# bridge-mappings="extnet:br-ex,physnet1:br-vlan" --os-neutron-ovn-
# bridge-interfaces="br-ex:eth1,br-vlan:eth2" --os-neutron-ovn-
# external-physnet="extnet"
CONFIG_NEUTRON_OVN_EXTERNAL_PHYSNET=extnet

# Interface for the Open vSwitch tunnel. Packstack overrides the IP
# address used for tunnels on this hypervisor to the IP found on the
# specified interface (for example, eth1).
CONFIG_NEUTRON_OVN_TUNNEL_IF=ens2f1

# Comma-separated list of subnets (for example,
# 192.168.10.0/24,192.168.11.0/24) used for sending tunneling packets.
# This is used to configure IP filtering to accept tunneling packets
# from these subnets instead of specific IP addresses of peer nodes.
# This is useful when you add existing nodes to EXCLUDE_SERVERS
# because, in this case, packstack cannot modify the IP filtering of
# the existing nodes.
CONFIG_NEUTRON_OVN_TUNNEL_SUBNETS=

2019-07-08 16:53:19::INFO::shell::100::root:: [localhost] Executing script:
rm -rf /var/tmp/packstack/20190708-165319-xs4Vr0/manifests/*pp
2019-07-08 16:53:19::INFO::shell::100::root:: [10.57.38.123] Executing script:
mkdir -p ~/.ssh
chmod 500 ~/.ssh
grep 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org' ~/.ssh/authorized_keys > /dev/null 2>&1 || echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org >> ~/.ssh/authorized_keys
chmod 400 ~/.ssh/authorized_keys
restorecon -r ~/.ssh
2019-07-08 16:53:19::INFO::shell::100::root:: [10.57.38.240] Executing script:
mkdir -p ~/.ssh
chmod 500 ~/.ssh
grep 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org' ~/.ssh/authorized_keys > /dev/null 2>&1 || echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/k9otrecJNYitT96tls7CwxgWgMA5AmH0PwhYIhFPMG+dKZxY4mER8o7CMgyWOI8VHkh7lcQlAcG/KiQDSBXKQATOuBbgL5Jrbtu6NEfMphK0LM3YzgUkVjBPaW8vAjOl8U+JWOzVGCXcIn/bzrMyNGbK09pVI3ImDoFvWaJCAZMAuG3CGC3992vEu16Ym5WH81IlqERCGnfeh/mRhd2M/DrG273trY6Y9r2fxfcozqczApVBRuKTclLU510xvJl3i5BIax5KyNhOvuRaWRLtZ+jw0amx/P5rRIekJ9wpEVTx8RTqVUe7UajqjwJ8w7lDfv4vQ6jqlz8F2rMKjVMB root@shp-vmc-00-man.churchofjesuschrist.org >> ~/.ssh/authorized_keys
chmod 400 ~/.ssh/authorized_keys
restorecon -r ~/.ssh
2019-07-08 16:53:20::INFO::shell::100::root:: [10.57.38.123] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
2019-07-08 16:53:20::INFO::shell::49::root:: Executing command:
rpm -qa --qf='%{name}-%{version}-%{release}.%{arch}
' | grep centos-release-openstack
2019-07-08 16:53:20::INFO::shell::100::root:: [10.57.38.123] Executing script:
(rpm -q 'centos-release-openstack-stein' || yum -y install centos-release-openstack-stein) || true
2019-07-08 16:53:21::INFO::shell::49::root:: Executing command:
rpm -q rdo-release --qf='%{version}-%{release}.%{arch}
'
2019-07-08 16:53:21::INFO::shell::100::root:: [10.57.38.123] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
yum clean metadata
2019-07-08 16:53:21::INFO::shell::100::root:: [10.57.38.240] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
2019-07-08 16:53:21::INFO::shell::49::root:: Executing command:
rpm -qa --qf='%{name}-%{version}-%{release}.%{arch}
' | grep centos-release-openstack
2019-07-08 16:53:22::INFO::shell::100::root:: [10.57.38.240] Executing script:
(rpm -q 'centos-release-openstack-stein' || yum -y install centos-release-openstack-stein) || true
2019-07-08 16:53:22::INFO::shell::49::root:: Executing command:
rpm -q rdo-release --qf='%{version}-%{release}.%{arch}
'
2019-07-08 16:53:22::INFO::shell::100::root:: [10.57.38.240] Executing script:
rpm -q --whatprovides yum-utils || yum install -y yum-utils
yum clean metadata
2019-07-08 16:53:22::INFO::shell::100::root:: [10.57.38.123] Executing script:
yum install -y puppet hiera openssh-clients tar nc rubygem-json
yum update -y puppet hiera openssh-clients tar nc rubygem-json
rpm -q --whatprovides puppet
rpm -q --whatprovides hiera
rpm -q --whatprovides openssh-clients
rpm -q --whatprovides tar
rpm -q --whatprovides nc
rpm -q --whatprovides rubygem-json
2019-07-08 16:53:34::INFO::shell::100::root:: [10.57.38.123] Executing script:
mkdir -p /var/tmp/packstack
mkdir --mode 0700 /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46
mkdir --mode 0700 /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46/modules
mkdir --mode 0700 /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46/resources
2019-07-08 16:53:34::INFO::shell::100::root:: [10.57.38.123] Executing script:
facter -p
2019-07-08 16:53:35::INFO::shell::100::root:: [10.57.38.123] Executing script:
[[ -f /etc/hiera.yaml ]] && [[ ! -L /etc/puppet/hiera.yaml ]] && ln -s /etc/hiera.yaml /etc/puppet/hiera.yaml || echo "skipping creation of  hiera.yaml symlink"
sed -i 's;:datadir:.*;:datadir: /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46/hieradata;g' $(puppet config print hiera_config)
2019-07-08 16:53:36::INFO::shell::100::root:: [10.57.38.240] Executing script:
yum install -y puppet hiera openssh-clients tar nc rubygem-json
yum update -y puppet hiera openssh-clients tar nc rubygem-json
rpm -q --whatprovides puppet
rpm -q --whatprovides hiera
rpm -q --whatprovides openssh-clients
rpm -q --whatprovides tar
rpm -q --whatprovides nc
rpm -q --whatprovides rubygem-json
2019-07-08 16:53:42::INFO::shell::100::root:: [10.57.38.240] Executing script:
mkdir -p /var/tmp/packstack
mkdir --mode 0700 /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a
mkdir --mode 0700 /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a/modules
mkdir --mode 0700 /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a/resources
2019-07-08 16:53:43::INFO::shell::100::root:: [10.57.38.240] Executing script:
facter -p
2019-07-08 16:53:43::INFO::shell::100::root:: [10.57.38.240] Executing script:
[[ -f /etc/hiera.yaml ]] && [[ ! -L /etc/puppet/hiera.yaml ]] && ln -s /etc/hiera.yaml /etc/puppet/hiera.yaml || echo "skipping creation of  hiera.yaml symlink"
sed -i 's;:datadir:.*;:datadir: /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a/hieradata;g' $(puppet config print hiera_config)
2019-07-08 16:53:44::INFO::shell::100::root:: [localhost] Executing script:
ssh-keygen -t rsa -b 2048 -f "/var/tmp/packstack/20190708-165319-xs4Vr0/nova_migration_key" -N ""
2019-07-08 16:53:44::INFO::shell::100::root:: [localhost] Executing script:
ssh-keyscan 10.57.38.240
2019-07-08 16:53:44::ERROR::run_setup::1062::root:: Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/packstack/installer/run_setup.py", line 1057, in main
    _main(options, confFile, logFile)
  File "/usr/lib/python2.7/site-packages/packstack/installer/run_setup.py", line 681, in _main
    runSequences()
  File "/usr/lib/python2.7/site-packages/packstack/installer/run_setup.py", line 648, in runSequences
    controller.runAllSequences()
  File "/usr/lib/python2.7/site-packages/packstack/installer/setup_controller.py", line 81, in runAllSequences
    sequence.run(config=self.CONF, messages=self.MESSAGES)
  File "/usr/lib/python2.7/site-packages/packstack/installer/core/sequences.py", line 109, in run
    step.run(config=config, messages=messages)
  File "/usr/lib/python2.7/site-packages/packstack/installer/core/sequences.py", line 50, in run
    self.function(config, messages)
  File "/usr/lib/python2.7/site-packages/packstack/plugins/neutron_350.py", line 858, in create_manifests
    (iface, n_host))
KeyError: "Couldn't detect ipaddress of interface ens2f1 on node 10.57.38.123"

2019-07-08 16:53:44::INFO::shell::100::root:: [10.57.38.123] Executing script:
rm -rf /var/tmp/packstack/44cb5988cf59430ab0120bf82ba63c46
2019-07-08 16:53:45::INFO::shell::100::root:: [10.57.38.240] Executing script:
rm -rf /var/tmp/packstack/8c7c484c768245bdae82d189322b0e9a