Skip to content
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

Openshift router does not respect ingress.kubernetes.io annotations #20009

Open
megastallman opened this issue Jun 14, 2018 · 8 comments
Open
Assignees
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. sig/network-edge

Comments

@megastallman
Copy link

megastallman commented Jun 14, 2018

Openshift router does not respect ingress.kubernetes.io annotations, when tuned for kubernetes-ingress compatibility(https://docs.openshift.org/latest/admin_guide/managing_networking.html).

Version

$ oc version
oc v3.9.0+191fece
kubernetes v1.9.1+a0ce1bc657
features: Basic-Auth GSSAPI Kerberos SPNEGO

Steps To Reproduce

I'm using the same ingress controller resource for phpmyadmin(this application is a nice example to triage the issue), deployed on Tectonic with nginx-based ingress controller, using the following annotations:

  annotations:
    ingress.kubernetes.io/add-base-url: 'true'
    ingress.kubernetes.io/rewrite-target: /

and it works.
I've enabled the ingress compatibility on Openshift. Other applications work great, especially cookie session-affinity, but phppgadmin does not. The base-url is not getting added.

Current Result

ingress.kubernetes.io annotations are ignored

Expected Result

ingress.kubernetes.io annotations should be respected. These annotations are not nginx-specific, so should be supported across all ingress-controllers.

@jwforres
Copy link
Member

jwforres commented Jul 3, 2018

@openshift/sig-networking

@openshift-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Oct 1, 2018
@openshift-merge-robot
Copy link
Contributor

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci-robot openshift-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Oct 31, 2018
@megastallman
Copy link
Author

Guys, actually this issue is not resolved yet. I've quit using rewrites and added an intermediate Nginx instance, but the problem is still here.

@ironcladlou
Copy link
Contributor

/lifecycle frozen

@openshift-ci-robot openshift-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Nov 1, 2018
@steimntz
Copy link

I've been trying it a lot these days but without success I had tried with others annotations such as nginx.ingress.kubernetes.io and variations however it had not been working properly because it doesn't make any change on the Ingress behavior.

@ironcladlou
Copy link
Contributor

I'm unable to locate any documentation upstream about the cited annotations being part of the "spec" for an ingress controller:

https://kubernetes.io/docs/concepts/services-networking/ingress/
https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.14/#ingress-v1beta1-networking-k8s-io
https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/

I could very well be missing something — can someone help? So far the annotations being asked for appear to be specific to ingress controller implementations (e.g. nginx). To me, the spec for an ingress controller is one that implements an Ingress resource. Do you have a different understanding?

There is one section that defines which I would interpret as being a specified annotation, and that's kubernetes.io/ingress.class.

@danwinship
Copy link
Contributor

/remove-sig networking
/sig network-edge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. sig/network-edge
Projects
None yet
Development

No branches or pull requests

8 participants