-
-
Notifications
You must be signed in to change notification settings - Fork 279
Ingress Resource Changes Kubernetes 1.19 #749
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
Conversation
Ingress Resource Changes 1.19 Ingress resource moved out of beta in v1.19. This is a good time to modernize Ingress resources. We thought that the ingress.class annotation would go away but it cannot yet. In v1.19 Ingress API is now networking.k8s.io/v1. All Ingress resources should migrate to this before v1.22. The extensions/v1beta1 and networking.k8s.io/v1beta1 API versions of Ingress will no longer be served in v1.22. API versions and resources are being automatically mutated in 1.19. While your manifest may say extensions/v1beta1, if you query the cluster the resource will report as networking.k8s.io/v1 and be in the new format. The most simplistic way to modernize your resources is to use the automatically mutated version from the cluster. This is a starting point and is basic compatibility only. Important: New spec.ingressClassName field is not ready for use! In GKE 1.19 the Ingress class annotation is still required: kubernetes.io/ingress.class: nginx This is required because the GKE built-in GCE ingress does not honor the new spec.ingressClassName field, it only honors the old annotation. When new Ingresses are created, if both the class field and annotation are set, an error will be returned. Thus we must stay with the annotation for now. Ingress GCE reference: kubernetes/ingress-gce#1301 Ingress NGINX and GCE ingress have not yet updated their documentation for this new Ingress version so all this can be somewhat confusing.
cndoit18
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you very much for your contribution.
|
There are two same PRs that I observed that you initiated first, can you integrate the two PRs |
I'm not sure this is true. I only find this as source for the information: https://wiki.cac.washington.edu/display/MCI/Ingress+Resource+Changes+Kubernetes+1.19 not mentioning any primary source. Please feel free to incorporate my changes from #750 |
|
The changes have been merged, close this pr. |
|
I am sorry, I still don't get it what does it mean? my load balancer is not working because of this update. now I'm confusing mine is working fine with this before |
Hi, what is your Kubernetes version? |
I posted wrong. it supposed to but also not working |
Ingress Resource Changes 1.19
Ingress resource moved out of beta in v1.19. This is a good time to modernize Ingress resources. We thought that the ingress.class annotation would go away but it cannot yet.
In v1.19 Ingress API is now networking.k8s.io/v1. All Ingress resources should migrate to this before v1.22.
The extensions/v1beta1 and networking.k8s.io/v1beta1 API versions of Ingress will no longer be served in v1.22.
API versions and resources are being automatically mutated in 1.19. While your manifest may say extensions/v1beta1, if you query the cluster the resource will report as networking.k8s.io/v1 and be in the new format.
The most simplistic way to modernize your resources is to use the automatically mutated version from the cluster. This is a starting point and is basic compatibility only.
Important: New spec.ingressClassName field is not ready for use!
In GKE 1.19 the Ingress class annotation is still required: kubernetes.io/ingress.class: nginx
This is required because the GKE built-in GCE ingress does not honor the new spec.ingressClassName field, it only honors the old annotation.
When new Ingresses are created, if both the class field and annotation are set, an error will be returned.
Thus we must stay with the annotation for now.
Ingress GCE reference: kubernetes/ingress-gce#1301
Ingress NGINX and GCE ingress have not yet updated their documentation for this new Ingress version so all this can be somewhat confusing.
closes/fixes #748