Note: The clustering feature is currently offered as a tech preview.
Clustering allows you to install MicroStack on several machines (“nodes”) and create an OpenStack cloud by combining the nodes together. At this time the cloud roles that can be assigned to each node are control and compute. These respectively translate to the cloud’s control plane and data plane. A cloud can consist of a single control node and multiple compute nodes.
The setup of nodes must be done from a freshly installed MicroStack snap. See the Installation and Quickstart page for how to install MicroStack.
Note: At this time, clustering requires the snap installation to use the `--edge` channel.
On the machine designated as the control node, begin initialisation:
An interactive session will follow. Here is a sample:
Do you want to setup clustering? (yes/no) [default=no] > yes 2019-10-29 13:32:17,834 - microstack_init - INFO - Configuring clustering ... What is this machines' role? (control/compute) > control Please enter a cluster password > ******* Please re-enter password > ******* Please enter the ip address of the control node [default=10.246.114.34] > ENTER
You’re done. Now wait for the process to finish. It can take between 9 and 15 minutes depending on the resources available on the host system.
Take note of the IP address that was discovered for the local system. You will need it when it comes time to add a compute node.
Note: The control node must have completed its initialisation phase prior to the addition of any compute nodes.
On the machine designated as a compute node, begin initialisation:
Like before, an interactive session will follow, but this time the ‘compute’ role will be selected:
Do you want to setup clustering? (yes/no) [default=yes] > yes 2019-10-29 13:43:29,425 - microstack_init - INFO - Configuring clustering ... What is this machines' role? (control/compute) > compute Please enter a cluster password > ******* Please re-enter password > ******* Please enter the ip address of the control node [default=10.20.20.1] > 10.246.114.34 Please enter the ip address of this node [default=10.246.114.25] > ENTER
The initialisation process for a compute node is much shorter than that of a control node. It can take as little as 20 seconds.
Once the cluster is set up you can perform a verification of it by launching a test instance based on the CirrOS image. The instance will be created on a compute node which the control node sees as an availability zone.
The command to use is the same as in the non-clustered case except that option
--availability-zone is added. The name of the AZ is based on the hostname
of the target compute node (here ‘node-urey’):
microstack.launch cirros --name test --availability-zone nova:node-urey
The output will provide the instance’s floating IP address (here 10.20.20.157).
So to SSH to the instance:
ssh -i ~/.ssh/id_microstack firstname.lastname@example.org
Without additional network configuration, the above command must be run from the control node.