[pve-devel] applied: [PATCH v3 cluster 4/4] Add cluster join API version check
Thomas Lamprecht
t.lamprecht at proxmox.com
Wed Mar 25 17:40:18 CET 2020
On 1/9/20 4:31 PM, Stefan Reiter wrote:
> Adds API call GET /cluster/config/apiversion to retrieve remote clusters
> join-API version (0 is assumed for versions without this endpoint). Also
> available via CLI as 'pvecm apiver'.
>
> Introduce API_AGE similar to storage plugin API, but with two ages for
> cluster/joinee roles. Currently, all versions are intercompatible.
>
> For future usage, a new 'addnode' parameter 'apiversion' is introduced,
> to allow introducing API breakages for joining nodes as well.
>
> As a first compatibility check, use new fallback method only if
> available. This ensures full compatibility between nodes/clusters with
> and without new fallback behaviour.
>
> Signed-off-by: Stefan Reiter <s.reiter at proxmox.com>
> ---
>
> I do think that both AS_CLUSTER and AS_JOINEE ages are necessary indeed:
>
> * AS_CLUSTER: If we introduce a parameter to addnode that we cannot have a
> fallback for, and old versions don't provide it, we can exclude them from
> joining
> * AS_JOINEE: If something changes regarding the cluster joing procedure and we
> know that older versions cannot correctly add us to the cluster, we can abort
> the join
>
> If I'm wrong, it'd be easy enough to remove one or the other. Having both
> doesn't hurt though?
>
It should be OK as is, applied, thanks!
More information about the pve-devel
mailing list