Comments (9)
Many people use skipper as second layer of load balancer infrastructure, that's why we do not set status in ingress.
There is another complexity, because of routesrv, which let's you split control plane and data plane in skipper. It's not really clear to me how this can work very well. Maybe best to outline how this can work.
Required will be an option to enable this behavior.
from skipper.
Many people use skipper as second layer of load balancer infrastructure, that's why we do not set status in ingress.
Not opposed to replicating this behavior, unsure how we could from an on-premise infrastructure setup.
I'll work on an initial proposal on for setting this up. Thanks!
from skipper.
Maybe it would also make more sense to create a new controller that just set's the status of ingress to your LB VIP (service type loadbalancer IP).
To be more helpful I would need to understand your VIP implementation by service type loadbalancer.
from skipper.
Looking into how other controllers do this, NGINX uses a CLI flag to enable reporting and option to use LB type Service or a predefined address.
For our clusters, when a VIP (LB type Service) is created, an external load balancer assigns an external IP address from a pool and forwards L4 traffic to the service endpoints.
On Ingress-NGINX (not NGINX ingress controller) and Contour Ingress controllers, the ingresses "external" address are automatically updated with the LB type Service External-IP
address.
from skipper.
Yes these controllers are basically singleton controllers that do not consume the traffic, that's why I wrote that it might make more sense to create a new controller.
nginx nor envoy knows about kubernetes nor ingress. Skipper knows kubernetes to build its routing table. If you want to build it into skipper, then I would propose to do this only in routesrv sub component and also add a flag to enable this. I think it will create more work for you if you add it to routesrv.
from skipper.
@szuecs thanks for the direction, I think we will develop a controller to update our ingress definitions. As you stated, working it into skipper would be more work.
Feel free to close this issue if it's not something planned to be implemented by you. Thank you!
from skipper.
If you want we can also link the controller if you want to publish it open source.
What do you think?
from skipper.
Not opposed to that personally, would have to see if we could do that or would have to be a personal project.
from skipper.
Let us know what decision you took, when it happened. We are happy to link any kind of project which is useful and it sounds really useful.
For now I will close the issue, but if you have something public to share, let us know and we'll link it!
from skipper.
Related Issues (20)
- Does the oauthOidcAllClaims filter provide the possibility to lookup sensitive data from Kubernetes Secrets HOT 7
- Secure RouteGroups with Kubernetes TLS Secrets HOT 1
- automatic drains based on http response code HOT 2
- Query predicate is giving inconsistent results HOT 3
- ClientIP predicate is giving inconsistent results HOT 8
- OAuth2CallbackPath using https when no TLS is defined HOT 3
- AWS sigv4 auth filter HOT 7
- Using Skipper for implementing webhooks HOT 6
- WASM extensions filter HOT 5
- Scratch image as base image of Skipper docker image HOT 5
- Flaky TestAuthorizeRequestFilter/Simple_Forbidden HOT 5
- Support Kubernetes Gateway API HOT 1
- Make Flow ID header configurable HOT 3
- Deprecate metrics.Default
- Named arguments in eskip HOT 2
- FlakyTest TestPrometheusMetrics HOT 1
- Missing Start Timestamp for Cumulative Metrics in Skipper Metrics HOT 1
- OPA: Reduce impact of filter creation time on routes
- Insecure cipher suites used for TLS 1.2 HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from skipper.