WebAssembly (Wasm) is the future of cloud-native infrastructure extensibility. Wasm provides a safe, secure, and dynamic way of extending infrastructure with the programming language of your choice. While feature-rich service meshes like Istio provide many features to help solve problems related to microservice communication, your organization might need custom solutions that are tailored specifically to your production environment, corporate policies, or other development constraints.

You can create a Wasm filter and store it in an OCI-compliant registry, such as Docker or Amazon ECR. Then, you can use the Gloo WasmDeploymentPolicy custom resource to apply the Wasm filter to your service mesh. Specify which Workload resources to configure with the Wasm filters, and then Gloo handles the rest. A Gloo extension server watches for Wasm deployments and manages the lifecycle of all your Wasm filters accordingly.

Supported programming languages

You can get Wasm starter kits in the following programming languages.

  • AssemblyScript
  • C++
  • Go
  • Rust

Benefits of using Gloo Wasm

Solo has driven development and provided support for Wasm filters in Envoy and Istio environments since early 2020, with the WasmDeployment custom resource. With the release of Istio 1.12 in late 2021, users also have the option to install the WasmPlugin community custom resource. To help you decide which method is right for you, consider the following benefits of Gloo Wasm.

BenefitCommunity Wasm plug-inGloo Wasm
Portable binary instruction format for programming languages to extend web and server-side apps
Embeddable and safe execution environment for Kubernetes, Envoy Proxy, and Istio
Developer templates to get started quickly
Deploy to just one management cluster for consistent configuration and easy management across clusters
Enterprise offering under development longer