canonical/microcloud

MicroCloud should validate API/Schema versions before clustering

Opened this issue · 0 comments

Attempting to set up MicroCloud with services (LXD, MicroCeph, MicroOVN) that have mismatched API/Schema versions, the setup will happily move along and then fail during those services' own version validation when forming the cluster with the error or one like it:

Error: Peer "n2" failed to join the cluster: Failed to update cluster status of services: Failed to join "LXD" cluster: Failed to configure cluster: Failed request to add member: The joining server version doesn't match (expected 5.18 with API count 360)

MicroCloud should instead incorporate the API versions of each service into the mdns response so that the system doing the lookup (calling microcloud init) can properly ignore them with a syslog message reporting that the node was skipped due to a version mismatch.