1

I really need help with setting up a controller and a few compute nodes with Devstack.

After executing the stack.sh on both the controller and the computer node I expect to have a OpenStack interface on the IP 192.168.122.13/ dashboard/project/api_access/ which I got successfully and a compute node on the IP 192.168.122.12 which will show up as a machine on the OpenStack interface (on 192.168.122.13). But I do not see the machine 192.168.122.12 in the OpenStack interface.

What is worse is that the IP 192.168.122.13 is listed as a compute node:

enter image description here

Here is my local.conf on the controller node:

HOST_IP=192.168.122.13
FIXED_RANGE=10.4.128.0/20
FLOATING_RANGE=192.168.122.128/25
LOGFILE=/opt/stack/logs/stack.sh.log
ADMIN_PASSWORD=mnbmnbmn
DATABASE_PASSWORD=mnbmnbmn
RABBIT_PASSWORD=mnbmnbmn
SERVICE_PASSWORD=mnbmnbmn

And here is the loca.conf on the compute node:

HOST_IP=192.168.122.12
FIXED_RANGE=10.4.128.0/20
FLOATING_RANGE=192.168.122.128/25
LOGFILE=/opt/stack/logs/stack.sh.log
ADMIN_PASSWORD=mnbmnbmn
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
DATABASE_TYPE=mysql
SERVICE_HOST=192.168.122.13
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
ENABLED_SERVICES=n-cpu,q-agt,c-vol,placement-client
NOVA_VNC_ENABLED=True
NOVNCPROXY_URL="http://$SERVICE_HOST:6080/vnc_lite.html"
VNCSERVER_LISTEN=$HOST_IP
VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN

Here is the output after running the stack.sh script on the compute node:

=========================
DevStack Component Timing
 (times are in seconds)
=========================
run_process            3
apt-get-update         1
osc                    0
wait_for_service       2
pip_install           37
apt-get                5
-------------------------
Unaccounted time      59
=========================
Total runtime        107



This is your host IP address: 192.168.122.12
This is your host IPv6 address: ::1

WARNING:
Using lib/neutron-legacy is deprecated, and it will be removed in the future


Services are running under systemd unit files.
For more information see:
https://docs.openstack.org/devstack/latest/systemd.html

DevStack Version: train
Change: 1b35581bb096883ceafbfeea286153eaec184c17 Use SETUPTOOLS_USE_DISTUTILS=stdlib for global pip installs 2020-08-31 16:09:16 +0200
OS Version: Ubuntu 18.04 bionic

I am running DevStack from the branch stable/train.

Does anyone here has any suggestions?

Furthermore, when I run the command for i in $(seq 2 10); do /usr/local/bin/nova-manage fixed reserve 10.4.128.$i; done

               ...
nova-manage: error: argument category: invalid choice: 'fixed' (choose from 'version', 'bash-completion', 'placement', 'network', 'cell_v2', 'db', 'floating', 'api_db')
Jenia Ivanov
  • 2,485
  • 3
  • 41
  • 69

1 Answers1

1

I recently had some similar issues like the one you described.

To begin with, 192.168.122.13 correctly appears as a Compute node, as DevStack's original purpose is for all-in-one installations. Hence, the Nova Compute service is installed by default in your Controller node.

Secondly, after Ocata version, for the compute hosts of the cells to be discovered, there are two options:

  1. Manually execute:

    # su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova

  2. Add the following line under the [scheduler] segment of /etc/nova/nova.conf in your controller node:

    discover_hosts_in_cells_interval = 60

    Then restart Nova-related services (Compute, Scheduler, Conductor):

    sudo systemctl restart devstack@n-*

I suggest the second option, which will periodically search for undiscovered compute hosts, so it will cover your needs even if you need to add an additional Compute node in the future.

Thirdly, in the local.conf of your Compute node, I can see that n-api-meta is not included in the enabled plugins. I would suggest to include it, run ./unstack.sh and ./stack.sh again and retry running the command:

for i in $(seq 2 10); do /usr/local/bin/nova-manage fixed reserve 10.4.128.$i; done

This command is intended for reservation of the first 10 IPs in your private subnet, hence, even if it fails you will still be able to know if your setup is operational.

K. Railis
  • 186
  • 3
  • 8
  • Hey. I did all of it, nothing appears in the interface `http://192.168.122.13/dashboard/project/instances/` – Jenia Ivanov Oct 22 '20 at 03:29
  • Also, running `for i in $(seq 2 10); do /usr/local/bin/nova-manage fixed reserve 10.4.128.$i; done` gives the following error as stated above: `nova-manage: error: argument category: invalid choice: 'fixed' (choose from 'version', 'bash-completion', 'placement', 'network', 'cell_v2', 'db', 'floating', 'api_db')` – Jenia Ivanov Oct 22 '20 at 03:31
  • Honestly this devstack seems to be total garbage. I'll just use ovirt probably to learn how to do virtualization – Jenia Ivanov Oct 22 '20 at 03:32
  • @JeniaIvanov Do you mean that the Compute node does not appear? Did you check under Admin -> Hypervisors on the sidebar? – K. Railis Oct 22 '20 at 07:12
  • Hey Railis. Thank you kindly for time and help but I abandoned the endeavor after an intense effort. Looks like the devstack is a pile of non working scripts that are not suitable for learning anything. I'm going to use OVirt instead spawn multiple VMs to learn Terraform and Ansible and other such technologie. – Jenia Ivanov Oct 26 '20 at 23:45