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

Support for layering ingresses #396

Open
simskij opened this issue Sep 4, 2024 · 3 comments
Open

Support for layering ingresses #396

simskij opened this issue Sep 4, 2024 · 3 comments

Comments

@simskij
Copy link
Member

simskij commented Sep 4, 2024

Enhancement Proposal

We should make sure that traefik supports the ingress relation both as a provider and as a consumer, allowing us to layer ingresses.

Acceptance Criteria

  • Traefik is able to successfully relate to another Traefik over the ingress relation
  • The traffic of traefik (lol) is proxied through both layers of ingress
  • The ingress URL of anything ingressed by the downstream traefik is decided by the upstream traefik

cc @jnsgruk

@jnsgruk
Copy link
Member

jnsgruk commented Sep 4, 2024

A good test for this will be deploying cos-lite (complete with it's traefik), then deploying another traefik upstream of it and ensuring you can access each of the cos components through it.

Looking at how things work now, really this should mean that the config option for external hostname is ignored when an ingress relation is presented that will provide a URL (i think!)

@dstathis
Copy link
Contributor

So is the idea that the url would be for example "https://example.com/cos-traefik/cos-grafana"? I am not sure I entirely understand the benefit of this.

@jnsgruk
Copy link
Member

jnsgruk commented Nov 11, 2024

The intended use case is a situation where someone deploys your "solution" which ships with a traefik, but needs to expose it within some infrastructure a different way (for example, in our datacentre with another charm such as a cloudflare/similar charm which presents the ingress interface).

In this particular case, the person deploying the solution won't have the rights to the actual ingress which controls the in-flow of traffic into the datacentre, so they would likely be consuming a CMR.

By layering the ingress, we avoid people having to reconfigure all the ingress for COS lite which is already configured.

@dstathis dstathis removed the Checked label Nov 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants