Failing to join existing incusOS VM to cluster

I have three incusOS VMs, I intended to form a cluster post-install.

I created the cluster on inc-cm1 on the webUI, and then went to join another member via cli, I did:

alc@mnt-cnt:~$ incus cluster join inc-cm1: inc-cm2:
What IP address or DNS name should be used to reach this server? [default=10.58.125.59]: inc-cm2.incus
What member name should be used to identify this server in the cluster? [default=inc-cm2.incus]: 
All existing data is lost when joining a cluster, continue? (yes/no) [default=no] yes
Choose "source" property for storage pool "local": local
Choose "zfs.pool_name" property for storage pool "local": local
Error: Failed to join cluster: Failed to initialize member: Failed to initialize storage pools and networks: Failed to update storage pool "local": Config key "source" is cluster member specific

Thinking it would work, but obviously it failed. Forming a cluster like this should work, right?

When setting up a cluster, the joining servers need to be completely empty.

The confusing error you’re getting would be consistent with the joining server having gotten the default Incus configuration applied by IncusOS, which results in an Incus network and storage pool.

To deploy a cluster on IncusOS, you’ll typically download a regular image for the first server, then for any server after that, you’ll download an image with " Apply default configuration " unticked.

This is covered in Creating an Incus cluster - IncusOS documentation

Well, unfortunately, now I get:

alc@mnt-cnt:~$ incus cluster join inc-cm1: inc-cm2:
What IP address or DNS name should be used to reach this server? [default=10.58.125.4]: inc-cm2.incus
What member name should be used to identify this server in the cluster? [default=inc-cm2.incus]: 
All existing data is lost when joining a cluster, continue? (yes/no) [default=no] yes
Choose "source" property for storage pool "local": 
Choose "zfs.pool_name" property for storage pool "local": 
Error: Failed to join cluster: Failed to initialize member: Failed to initialize storage pools and networks: Failed to create storage pool "local": Loop backed pools aren't supported on IncusOS

(inc-cm2 is a new VM, installed from an ISO that does not apply the default configuration)

edit: turns out I needed to use local/incus for the source property. Should have double checked the docs like you said.

See the note at the bottom of the previously linked documentation page, that provides you with the expected value for that “source” configuration key.