Extending Envoy Using WebAssembly (Wasm)
summary
Explains how Envoy loads WebAssembly modules (default V8 runtime, proxy-wasm ABI) and shows a working Go/TinyGo module compiled to main.wasm that increments a hello header counter and injects two response headers read from config. Demonstrates local envoy plus admin stats and dynamic delivery via Istio xDS to sidecars (no envoy restart), describes singleton VM for global tasks, notes Wasm supports 30+ languages, and proves the filter runs, logs, and exposes metrics as configured.
AI-written summary · about
chapters (10)
- 0:00Start
- 0:32Envoy Extensibility
- 2:08Introduction
- 3:07Wasm Benefits
- 4:08Wasm in Envoy
- 5:31Proxy-Wasm
- 8:19Envoy Wasm Configuration
- 9:38Wasm Service Config
- 11:04Wasm HTTP Filter Config
- 11:42Demo
related talks
37mExtending Envoy with WebAssembly
05mExtending Envoy With WebAssembly
30mTaking Service Mesh a Step Further with WebAssembly
26mTaking Envoy Beyond C++ with WebAssembly
31mExtending Sidecarless Applications with Wasm in Istio Ambient Mesh
34mEnvoy, Filters and WebAssembly for Everyone!
33mDeveloping & Debugging WebAssembly Filters for Envoy
26mBeyond Wasm: How Dynamic Modules Let You Extend Envoy Proxy in Go, Rust, or…
