k8up icon indicating copy to clipboard operation
k8up copied to clipboard

Reduce manual migration steps when upgrading K8up

Open cimnine opened this issue 3 years ago • 2 comments

Summary

As a cluster admin using k8up
I want a smooth upgrade experience for k8up
So that I upgrade to new versions of k8up.

Context

In #511 and #509 we changed the names of annotations and of the CRDs. It would be nice if these changes were automatically applied to kubernetes by the operator.

Out of Scope

  • Automate it completely.

Further links

  • https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/#webhook-conversion

Acceptance criteria

  • An upgrade to K8up v2 does not require tedious manual intervention.
  • Some manual intervention may be tolerated.

Implementation Ideas

Two ideas to explore

  • To engineer a conversion webhook, see https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/#webhook-conversion (suggested by @ccremer in #511 )
  • A new CLI module, e.g. k8up migrate, which one can run against its cluster which does all the tedious work.

cimnine avatar Sep 17 '21 13:09 cimnine

@ccremer I assume this is obsolete now as v2 has been released quite a while ago?

Kidswiss avatar Mar 02 '22 08:03 Kidswiss

I don't know how many of our clusters are still running K8up v1 and if that's an issue.

However, we might still consider this issue for K8up v3 if we want to support automatic upgrades. Though I don't know if that is possible with conversion webhook if we completely redesign all CRDs.

ccremer avatar Mar 02 '22 09:03 ccremer