Envoy is an open-source service proxy used as a sidecar in service meshes. Attached to each Kubernetes Pod, it handles application traffic and exposes real-time telemetry without requiring application code changes. section 4.2 section 4.8
In an Anthos Service Mesh deployment, Envoy provides several operational responsibilities:
- Intercepts inbound and outbound microservice communication through a sidecar process. section 4.2
- Collects metrics and logs from proxy traffic and TCP sessions for analysis through Istio observability integrations. section 4.3.4
- Communicates with the control plane through the xDS API, the same technology used by proxyless gRPC deployments. section 4.2
- Supports mesh visibility and operational diagnosis through telemetry consumed by Kiali, Prometheus, Grafana, and distributed tracing systems. section 4.3.4
Sidecar and proxyless choices
A mesh can combine Envoy sidecars with proxyless services. Applications that use gRPC may use Google Cloud Traffic Director and xDS, while non-gRPC services can retain Envoy sidecars. Removing a sidecar removes an extra network hop and can reduce latency. section 4.2
Shows the sidecar proxy approach, where an Envoy proxy is attached to each Pod to observe service traffic. section 4.2
