Since I need more space than 256 characters, I write an answer, although I am not sure whether it works for you. I managed to set up an Ussuri Devstack on a virtual machine that has a single network interface, and that is connected to the outside network.
TL;DR: The instructions don't work out of the box on Ubuntu 18.04. Some tweaking is required.
My home network is 192.168.1.0/24. This the local.conf:
[[local|localrc]]
ADMIN_PASSWORD=pw
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
PUBLIC_INTERFACE=ens3
HOST_IP=192.168.1.200
FLOATING_RANGE=192.168.1.0/24
PUBLIC_NETWORK_GATEWAY=192.168.1.1
Q_FLOATING_ALLOCATION_POOL=start=192.168.1.230,end=192.168.1.250
I am not sure about the meaning of PUBLIC_NETWORK_GATEWAY, but I just followed the instructions.
Main tweak: /etc/resolv.conf
When running stack.sh, the internet connection breaks at some point, which breaks stack.sh. It turns out that name resolution ceases working, although I put the correct nameservers in the /etc/netplan config file. Too tired to troubleshoot this, I decided to use a manual, static /etc/resolv.conf that contains my nameservers, and to disable systemd-resolved (I even masked it to be certain it won't be revived by stack.sh).
Other tweaks
- I also added the Devstack host to
/etc/hosts, although it's probably
not necessary.
- Since this was a VM
that I started from a snapshot, it's
clock was a day late. I corrected
that as well.
- After stack.sh, br-ex
had the IP address of my gateway
192.168.1.1. This doesn't work, and I simply removed the address.
Result
stack.sh runs through, I can create an instance that has access to the internet, and after giving it a floating IP I can access the instance from other devices on my home network.
By default, Devstack's publicnetwork is isolated. To map it to your physical network, follow instructions at https://docs.openstack.org/devstack/l....
Hey thank you for the quick reply. I tried out this method too. I only have one interface enp1s0 on my server. And after following the guideline you gave I was not able to ping even the devstack server. I used the Shared Guest Interface¶ approach specified in the guideline.
One detail: You won't find the floating IP in any DHCP logs because DHCP is not involved. Let alone local WiFi logs - your local WiFi network knows nothing about that floating IP.
You should see the floating IP in the router namespace.
Does the Devstack host have connectivity to the floating IP?
Then in that case how will a machine in the local network(wifi network which the devstack host is also connected to) talk to the instance within devstack host. My devstack host's "ip addr" is having this output -> imgur.com/2aeiWfF and local.conf is -> imgur.com/szxkSV8
The local.conf looks OK, but after running stack.sh there should be several Openvswitsch bridges in the "ip addr" output. Are you sure stack.sh was successful?
Also: Do you see the floating IP in the router's network namespace, and does the Devstack host have connectivity to the floating IP?