Hi All, I have deployed Openstack Newton release using Openstack-Ansible 14.0.8 with target hosts (Controller and Compute) having Ubuntu 16.04. I want to ping/access my external lab n/w through the VMs (instances in Openstack Compute node) but not able to do so. Here are my environment and respective configurations.
Basically, I had tried to create the example test n/w configuration ( https://docs.openstack.org/project-deploy-guide/openstack-ansible/newton/app-config-test.html#test-environment-config) with some changes in /etc/network/interfaces file because each Compute and Controller Node are having two NICs in my setup. As per the example environment, I am also having 1 Compute and 1 Controller Node in my setup. Each physical node (Controller and Compute) is having two NICs. eth0 of each machine is connected to a switch for any kind of communication b/w compute and controller node. eth1 of each machine is connected to my lab n/w (192.168.255.XXX). My */etc/network/interfaces* file from Controller and Compute node are attached with this e-mail. I have also attached *openstack_user_config.yml* file which I am using. As my requirement is to provide external connectivity to VMs running inside Openstack environment. Could you guys please have a look at my network interfaces files and openstack_user_config.yml file to see if there is anything wrong in these configurations which is blocking me in providing the external connectivity to my VMs. Few things which might be helpful in analyzing these files: - My lab n/w (192.168.255.XXX) is not tagged n/w, it doesn't expect VLAN tagged packets. So, do I need to create flat external n/w? As you can notice in my openstack_user_config.yml file, I have commented flat n/w section from provider networks section. It was done because when I first created this setup, I was unable to launch VMs and on discussion on openstack-ansible channel and looking at logs, it was found that "eth12" interface was non-existent on Compute node and hence error was appearing in logs. So, folks in openstack-ansible channel suggested to comment the flat n/w configuration from openstack_user_config.yml and re-configure neutron and give it a try. After this, I was able to launch VMs. But now with the requirement to ping/access outside lab n/w, it seems that flat n/w configuration would be required again. Please also suggest what changes are required to be made so that flat n/w configuration is also successful. - One more thing, if you look at my network interfaces file, br-vlan is having eth0 as bridge-port but my eth0 is not connected to the outside world i.e. lab n/w. Shouldn't br-vlan be using bridge-port as eth1 instead of eth0 considering that br-vlan is providing connectivity to external n/w? Now this may seem strange but when I am deleting eth0 from br-vlan and adding eth1 on br-vlan of both controller and compute node, these hosts are not reachable or able to ping (after some time) any other lab machine on 192.168.255.XXX n/w and vice-versa whereas with having eth0 in br-vlan, compute and controller are able to access lab machines and vice-versa. Just to include more information, if required, I am adding the commands I used to create n/ws. *My VMs are on INTERNAL_NET1 created using following commands:* - openstack network create --provider-network-type vlan INTERNAL_NET1 - openstack subnet create INTERNAL_SUBNET_1_1 --network INTERNAL_NET1 --subnet-range 192.168.2.0/24 *EXTERNAL_NET is created using following commands:* - neutron net-create --provider:physical_network=flat --provider:network_type=flat --shared --router:external=true GATEWAY_NET - neutron subnet-create GATEWAY_NET 192.168.255.0/24 --name GATEWAY_SUBNET --gateway=192.168.255.1 --allocation-pool start=192.168.255.81,end=192.168.255.100 * Earlier I had tried --provider:physical_network=vlan --provider:network_type=vlan and things didn't work because lab n/w seems not expecting VLAN tagged packets. So, thinking of having flat n/w now.* *Router is created and GW and interfaces are set using following commands:* - neutron router-create NEUTRON-ROUTER - neutron router-gateway-set NEUTRON-ROUTER GATEWAY_NET - neutron router-interface-add NEUTRON-ROUTER INTERNAL_SUBNET_1_1 Thanks. Regards, Amit
# Controller Node (Infra). # This illustrates the configuration of the first # Infrastructure host and the IP addresses assigned should be adapted # for implementation on the other hosts. # # After implementing this configuration, the host will need to be # rebooted. # Physical interface auto eth0 iface eth0 inet manual # Container/Host management VLAN interface auto eth0.10 iface eth0.10 inet manual vlan-raw-device eth0 # OpenStack Networking VXLAN (tunnel/overlay) VLAN interface auto eth0.30 iface eth0.30 inet manual vlan-raw-device eth0 # Storage network VLAN interface (optional) auto eth0.20 iface eth0.20 inet manual vlan-raw-device eth0 # Container/Host management bridge auto br-mgmt iface br-mgmt inet static bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0.10 address 172.29.236.11 netmask 255.255.252.0 gateway 172.29.236.1 dns-nameservers 8.8.8.8 8.8.4.4 # OpenStack Networking VXLAN (tunnel/overlay) bridge # # Only the COMPUTE and NETWORK nodes must have an IP address # on this bridge. When used by infrastructure nodes, the # IP addresses are assigned to containers which use this # bridge. # auto br-vxlan iface br-vxlan inet manual bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0.30 # compute1 VXLAN (tunnel/overlay) bridge config #auto br-vxlan #iface br-vxlan inet static # bridge_stp off # bridge_waitport 0 # bridge_fd 0 # bridge_ports eth0.30 # address 172.29.240.12 # netmask 255.255.252.0 # OpenStack Networking VLAN bridge auto br-vlan iface br-vlan inet manual bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0 # Create veth pair, do not abort if already exists pre-up ip link add br-vlan-veth type veth peer name eth1 || true # Set both ends UP pre-up ip link set br-vlan-veth up pre-up ip link set eth1 up # Delete veth pair on DOWN post-down ip link del br-vlan-veth || true bridge_ports br-vlan-veth # Storage bridge (optional) # # Only the COMPUTE and STORAGE nodes must have an IP address # on this bridge. When used by infrastructure nodes, the # IP addresses are assigned to containers which use this # bridge. # auto br-storage iface br-storage inet manual bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0.20 # compute1 Storage bridge #auto br-storage #iface br-storage inet static # bridge_stp off # bridge_waitport 0 # bridge_fd 0 # bridge_ports eth0.20 # address 172.29.244.12 # netmask 255.255.252.0 # The eth1 external network interface auto eth1 iface eth1 inet static address 192.168.255.45 netmask 255.255.255.0 gateway 192.168.255.1 dns-nameservers 192.168.0.37 192.168.0.40 # The loopback network interface auto lo iface lo inet loopback source /etc/network/interfaces.d/* source /etc/network/interfaces.d/*.cfg
# Compute Node. # This illustrates the configuration of the first # Infrastructure host and the IP addresses assigned should be adapted # for implementation on the other hosts. # # After implementing this configuration, the host will need to be # rebooted. # Physical interface auto eth0 iface eth0 inet manual # Container/Host management VLAN interface auto eth0.10 iface eth0.10 inet manual vlan-raw-device eth0 # OpenStack Networking VXLAN (tunnel/overlay) VLAN interface auto eth0.30 iface eth0.30 inet manual vlan-raw-device eth0 # Storage network VLAN interface (optional) auto eth0.20 iface eth0.20 inet manual vlan-raw-device eth0 # Container/Host management bridge auto br-mgmt iface br-mgmt inet static bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0.10 address 172.29.236.12 netmask 255.255.252.0 gateway 172.29.236.1 dns-nameservers 8.8.8.8 8.8.4.4 # OpenStack Networking VXLAN (tunnel/overlay) bridge # # Only the COMPUTE and NETWORK nodes must have an IP address # on this bridge. When used by infrastructure nodes, the # IP addresses are assigned to containers which use this # bridge. # #auto br-vxlan #iface br-vxlan inet manual # bridge_stp off # bridge_waitport 0 # bridge_fd 0 # bridge_ports eth0.30 # compute1 VXLAN (tunnel/overlay) bridge config auto br-vxlan iface br-vxlan inet static bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0.30 address 172.29.240.12 netmask 255.255.252.0 # OpenStack Networking VLAN bridge auto br-vlan iface br-vlan inet manual bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0 # Create veth pair, do not abort if already exists pre-up ip link add br-vlan-veth type veth peer name eth1 || true # Set both ends UP pre-up ip link set br-vlan-veth up pre-up ip link set eth1 up # Delete veth pair on DOWN post-down ip link del br-vlan-veth || true bridge_ports br-vlan-veth # Storage bridge (optional) # # Only the COMPUTE and STORAGE nodes must have an IP address # on this bridge. When used by infrastructure nodes, the # IP addresses are assigned to containers which use this # bridge. # #auto br-storage #iface br-storage inet manual # bridge_stp off # bridge_waitport 0 # bridge_fd 0 # bridge_ports eth0.20 # compute1 Storage bridge auto br-storage iface br-storage inet static bridge_stp off bridge_waitport 0 bridge_fd 0 bridge_ports eth0.20 address 172.29.244.12 netmask 255.255.252.0 # The eth1 external network interface auto eth1 iface eth1 inet static address 192.168.255.44 netmask 255.255.255.0 gateway 192.168.255.1 dns-nameservers 192.168.0.37 192.168.0.40 # The loopback network interface auto lo iface lo inet loopback source /etc/network/interfaces.d/* source /etc/network/interfaces.d/*.cfg
openstack_user_config.yml
Description: Binary data
_______________________________________________ OpenStack-operators mailing list OpenStack-operators@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators