Comments (2)
The issue seems to be that, since Envoy only queries the SDS every 15 seconds by default, it can have an endpoint that's stale if the endpoint goes away right after the query (as can happen when the service is updated).
The simplest way to work around this for Ambassador-as-an-API-gateway is likely just to let Kubernetes handle load balancing for the moment. That costs a lot of features, but it's dirt simple.
Other things we could do:
- drop the 15-second poll to 1 second
- document that you must do rolling upgrades to avoid the outage (ugh)
- teach Envoy how to accept updates over a websocket asynchronously ( ;) and also ugh)
from emissary.
Closing since we switched away from SDS for launch. Also see #47.
from emissary.
Related Issues (20)
- TracingService: `propagation_modes` incompatible with `opentelemetry` driver
- Add support to create custom relabelling config for `serviceMonitor`
- Upgrade to 3.9.3
- Globally configure `min_tls_version` and `cipher_suites` for all connections
- Allow to set ipFamilies in service and disable the module
- api version being appended to ambassador id for v3alpha1 mapping resources HOT 1
- no_healthy_upstream possibly caused by strange envoy DNS timeout HOT 1
- Opentelemetry driver missing spans HOT 4
- cannot override name with nameOverride when the release name is ambassador
- Change to mappings breaks canary routes
- Rate Limit example does not work HOT 4
- Emissary Ingress Readiness/Liveness Probe
- Readiness and Liveness Probe Failing with Overload Manager Configuration HOT 1
- shut down with error error: PANIC: reflect: reflect.Value.Set using value obtained using unexported field HOT 5
- SSL Handshake Failure When Mapping to External HTTPS Service (AWS CloudFront + S3) in Emissary Ingress HOT 1
- Routing with prefix not working HOT 1
- Emissary sending requests to 2 separate services as a round-robin despite hostname HOT 1
- Listener not accepting HTTPS without a `*` host being defined, but with a `*` host, `mappingSelector` do not work HOT 5
- Upgrade Envoy Proxy to resolve CVE-2024-30255 HOT 1
- End of life policy HOT 1
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 emissary.