-
Notifications
You must be signed in to change notification settings - Fork 369
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Namespace cannot be deleted after upgrading antrea from 0.4.0 to 0.5.0-dev #494
Comments
Applying a newer version of yaml is the most used way to upgrade, but without extra arguments there will be this kind of issues when some resources are removed from the yaml.
However, APIService is not in default prunewhitelist, we will have to specify what resources need to clean up:
I think we could add this instruction to release note and a section in getting-started.md after "Installation". |
Documenting the solution in 0.5.0 sounds good to me. |
We could also take care of this internally in the init phase of the Antrea controller through the apiserver client: delete all the |
@antoninbas it would require more permission granted to antrea-controller account, not sure whether it's worth (and the permission needs to be kept indefinitely to guarantee user can upgrade from 0.4.0). If we don't consider the long term possibility that we may have to deprecate some resources in future, maybe another way is having a dummy api to keep it work if this group "system.antrea" is likely to be used soon. |
I did consider the dummy API case. If the goal is to ultimately remove "system.antrea", then now is probably the right time to do it, as the number of users is bound to grow (hopefully) and it will just mean more users will run into this issue when we eventually remove it. We should be more careful in the future, as the impact of this issue is very large IMO. With the antctl framework refactor, it seems we are no longer using apiserver aggregation, at least for now? Finally, will we run into a similar issue if we decide to update the version number for one of our API services (e.g. |
@antoninbas we still need apiserver aggregation for |
I am a bit concerned with always requiring It seems that K8s is keeping old API versions around (e.g. there is both a |
Fixed by #527 |
Describe the bug
I upgraded my cluster from 0.4.0 to 0.5.0-dev, none of namespaces can be deleted due to the errors below:
It should be introduced by this change #356 where
v1beta1.system.antrea.tanzu.vmware.com
was removed and antrea-controller doesn't has that API any more. But the apiservice was not unregistered and blocked all namespace deletion.To Reproduce
The namespace will be terminating forever.
Expected
Upgrading antrea shouldn't cause this error.
Either clear upgrade instruction should be provided, or applying newer yaml should be compatible.
Actual behavior
The K8s cluster cannot work when deleting namespace after upgrading antrea.
Versions:
Please provide the following information:
kubectl version
). If your Kubernetes components have different versions, please provide the version for all of them. v1.16.2The text was updated successfully, but these errors were encountered: