3 Istio’s data plane: Envoy Proxy

 

This chapter covers

  • Understanding stand-alone Envoy Proxy and how it contributes to Istio
  • Hands on with Envoy configuration to get an appreciation for how it works
  • Envoy’s capabilities like traffic routing, resilience, and metric collection are core to a service mesh like Istio
  • How to configure Envoy and how Istio makes it easier to do so in a cluster
  • Exploration of Envoy’s Admin API to get a sense for how to introspect and debug a proxy

When we introduced the idea of a service mesh in Chapter 1, we established the concept of a service proxy and how this proxy understands application-level constructs (e.g., application protocols like HTTP and gRPC) and enhances an application’s business logic with non-differentiating application-networking logic. This service proxy runs collocated and out of process with the application and the application talks through the service proxy whenever it wants to communicate with other services. In many ways, this proxy should be considered part of the application.

3.1 What is Envoy Proxy

3.1.1 Envoy’s core features

3.1.2 Envoy compared to other proxies

3.2 Configuring Envoy

3.2.1 Static configuration

3.2.2 Dynamic configuration

3.3 Envoy in action

3.3.1 Envoy’s Admin API

3.3.2 Envoy request retries

3.4 How Envoy fits with Istio

3.5 Summary

sitemap