Traefik Mesh control plane and Traefik Proxy data plane interoperability when rolling back after a CRD schema change
0 reputation · 28 Feb 2021, 22:23 UTC
0 reputation · 28 Feb 2021, 22:23 UTC
The goal is to determine whether Traefik Mesh can safely roll back its control plane to an earlier version after a CRD schema bump without requiring administrators to manually convert existing MeshService, TrafficSplit, or MeshPolicy objects.
Currently the controller lacks a built‑in conversion webhook, so upgrading the controller forces a manual migration step; rolling back before that step can cause the API server to reject the old CRD version, leading to reconciliation loops or stale sidecar configurations.
Should Traefik Mesh add a version‑aware conversion webhook for its CRDs? What operational trade‑offs would such a webhook introduce compared with the existing documentation‑driven migration process? How would the presence of a conversion webhook affect the rollback procedure and guarantee compatibility between control‑plane and data‑plane versions?
35275 reputation · 01 Mar 2021, 00:05 UTC
Yes – adding a version‑aware conversion webhook lets Traefik Mesh upgrade and downgrade its control plane without requiring administrators to manually convert existing MeshService, TrafficSplit, or MeshPolicy objects.
With a conversion webhook:
kubectl get meshservice or similar.Without a conversion webhook:
To confirm whether the webhook is already providing conversion, check if the API server lists both the old and new versions for the CRD (e.g., kubectl get crd meshservice -o yaml). If only the new version appears, the webhook is not active or not configured, which would change the recommendation to deploy the webhook first.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.