Multi-host Devstack

This is a guide for developers who want to setup Zun in more than one hosts.

Prerequisite

You need to deploy Zun in a devstack environment in the first host.

Refer the Exercising the Services Using Devstack session at Developer Quick-Start Guide for details.

Enable additional zun host

Refer to the Multi-Node lab for more information.

On the second host, clone devstack:

# Create a root directory for devstack if needed
$ sudo mkdir -p /opt/stack
$ sudo chown $USER /opt/stack

$ git clone https://opendev.org/openstack/devstack /opt/stack/devstack

The second host will only need zun-compute service along with kuryr-libnetwork support. You also need to tell devstack where the SERVICE_HOST is:

$ SERVICE_HOST=<controller's ip>
$ HOST_IP=<your ip>
$ git clone https://opendev.org/openstack/zun /opt/stack/zun
$ cat /opt/stack/zun/devstack/local.conf.subnode.sample \
    | sed "s/HOST_IP=.*/HOST_IP=$HOST_IP/" \
    | sed "s/SERVICE_HOST=.*/SERVICE_HOST=$SERVICE_HOST/" \
    > /opt/stack/devstack/local.conf

Run devstack:

$ cd /opt/stack/devstack
$ ./stack.sh

On the controller host, you can see 2 zun-compute hosts available:

$ zun service-list
+----+-------------+-------------+-------+----------+-----------------+---------------------------+---------------------------+
| Id | Host        | Binary      | State | Disabled | Disabled Reason | Updated At                | Availability Zone                |
+----+-------------+-------------+-------+----------+-----------------+---------------------------+---------------------------+
| 1  | zun-hosts-1 | zun-compute | up    | False    | None            | 2018-03-13 14:15:40+00:00 | Nova                      |
| 2  | zun-hosts-2 | zun-compute | up    | False    | None            | 2018-03-13 14:15:41+00:00 | Nova                      |
+----+-------------+-------------+-------+----------+-----------------+---------------------------+---------------------------+