14 Extending Istio on the request path

 

This chapter covers

  • Understanding Envoy filters
  • Using Istio’s EnvoyFilter resource to configure Envoy directly
  • Using Lua to customize the request path
  • Using WebAssembly to customize the request path

As you’ve seen throughout this book, Istio can bring a lot of value to organizations with its application-networking functionality. Organizations adopting Istio will likely have other constraints or assumptions that Istio may not fulfill out of the box. You will likely need to extend Istio’s capabilities to more nicely fit within these constraints.

As we saw in chapter 3, and reinforced throughout the book, the Envoy proxy is a foundational component of the Istio service mesh. Envoy is the service proxy that lives with the application instance and on the request path between services in a mesh. Although Envoy has a significant set of functionality that can simplify application networking for your services, you will most likely run into scenarios where you need to enhance Envoy for “last-mile” or customized integration. The following are examples of extension:

  • Integrating with rate limiting or external authorization services
  • Adding, removing, or modifying headers
  • Calling out to other services to enrich a request payload
  • Implementing custom protocols like HMAC signing/verification
  • Non-standard security token handling

14.1 Envoy’s extension capabilities

 
 
 

14.1.1 Understanding Envoy’s filter chaining

 
 

14.1.2 Filters intended for extension

 

14.1.3 Customizing Istio’s data plane

 
 
 

14.2 Configuring an Envoy filter with the EnvoyFilter resource

 
 

14.3 Rate-limiting requests with external call-out

 
 

14.3.1 Understanding Envoy rate limiting

 

14.4 Extending Istio’s data plane with Lua

 
 

14.5 Extending Istio’s data plane with WebAssembly

 
 
 

14.5.1 Introducing WebAssembly

 
 

14.5.2 Why WebAssembly for Envoy?

 
 
 
 
sitemap

Unable to load book!

The book could not be loaded.

(try again in a couple of minutes)

manning.com homepage
test yourself with a liveTest