diff --git a/calico-enterprise/operations/crd-migration.mdx b/calico-enterprise/operations/crd-migration.mdx index da05c9203f..e6ceafe9f7 100644 --- a/calico-enterprise/operations/crd-migration.mdx +++ b/calico-enterprise/operations/crd-migration.mdx @@ -67,11 +67,23 @@ The locked window is typically short (seconds to a few minutes depending on clus kubectl apply -f $[manifestsUrl]/manifests/migration.projectcalico.org_datastoremigrations.yaml ``` + :::note + + If you installed the DatastoreMigration CRD on an earlier release, delete it before applying this one: + + ```bash + kubectl delete crd datastoremigrations.migration.projectcalico.org + ``` + + The CRD moved from `v1beta1` to `v1`. Kubernetes rejects an update that drops a version still listed in the CRD's `status.storedVersions`, so `kubectl apply` fails with a confusing error otherwise. Deleting the CRD also deletes any DatastoreMigration resource, so only do this if no migration is in progress. + + ::: + 3. **Create the DatastoreMigration CR.** ```bash kubectl apply -f - <