How to add a cluster member to an existing MicroCloud

A MicroCloud cluster can consist of up to fifty cluster members. These can be added during initialization as well as at any time afterward, up to this limit.

Interactive configuration

To add a cluster member to a MicroCloud, run the microcloud add command on one of the existing cluster members:

sudo microcloud add

On the machine you want to add to the cluster, run the microcloud join command:

sudo microcloud join

Answer the prompts on both sides to add the cluster member.

Non-interactive configuration

To automate adding a cluster member, provide a preseed configuration in YAML format to the microcloud preseed command:

cat <preseed_file> | microcloud preseed

In the list of systems, include only the new machine and set either initiator or initiator_address, which can point to any machine that is already part of the MicroCloud.

Distribute and run the same preseed configuration on both the machine being added, and the cluster member used for the initiator or initiator_address. See the full reference for possible configuration options or the minimal example below.

Minimal preseed using multicast discovery

You can use the following minimal preseed file to add another machine to an existing MicroCloud. In this case micro01 takes over the role of the initiator. Multicast discovery is used to find the existing MicroCloud on the network:

The disk /dev/sdb will be used for the machine’s local storage pool. The already existing remote storage pool will be extended with /dev/sdc:

lookup_subnet: 10.0.0.0/24
initiator: micro01
session_passphrase: foo
systems:
- name: micro04
  ovn_uplink_interface: eth1
  storage:
    local:
      path: /dev/sdb
    ceph:
      - path: /dev/sdc

Run the microcloud preseed command on micro01 and micro04 to add the new cluster member.