Using Envoy for data aware traffic routing in Azure Service Fabric
summary
Envoy is used as the in-cluster proxy to make Service Fabric’s stateful routing data-aware by adding a range match header to route partitions, injecting that header via a configurable Lua filter that hashes path/header values, and using subset selectors so HTTP verbs send writes to primaries while reads can go to secondaries. Upgrades use in-place rolling and 30% API 70% behavioral work was needed to port Envoy to Windows (epoll vs level triggering caused CPU spikes; IO completion ports are the long term fix), and shadowing is used for safe testing.
AI-written summary · about
chapters (10)
- 0:00Intro
- 0:31Service Fabric overview
- 2:56Anatomy of a stateful service
- 5:41Stateful traffic routing
- 6:31Service discovery and routing
- 14:54Load balancing
- 18:13Health checking
- 19:10Versioning and upgrades
- 20:55Porting to Windows
- 24:13Why Envoy?
related talks
22mService Mesh using Envoy on Windows
27mEnvoy Gateway: An in-Depth Guide of Its Benefits, Use Ca...
28mExtending Envoy for Our Use: An End User Adoption Story from Fidelity
22mThe Trials and Success of Adopting Envoy at Tinder
29mThe rise of Layer 7, microservices, and the proxy war...
34mDecentralized Routing For a Sharded Application On Service Mesh
32mRethinking the Proxy Model: Implementing Envoy as a Node-Scoped Agent
10mLightning Talk: Envoy Upstream Enhancements
