Skip to content

hermanbanken/envoy-xds

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
xds
 
 
 
 
 
 

Envoy xDS demo

xDS is the control plane protocol of Envoy. An Envoy instance can be configured to contact an xDS endpoint for additional config (see envoy-data/bootstrap-xdsv3.yaml).

Via xDS these 5 root level configuration types can be configured:

  1. endpoints (implement only this for just an Endpoint Discovery Service (EDS))
  2. clusters
  3. routes
  4. listeners
  5. runtimes

This repository shows:

  • how to run a custom xDS control-plane; uses go-control-plane example.
  • how to run a EDS discovery service; uses go-control-plane dyplomat example.
  • how to add metadata via web assembly.
  • how to add metadata via a gRPC call.
  • how to dynamically select cluster endpoints based on some kind of metadata.

References

  1. https://github.com/envoyproxy/go-control-plane/tree/master/internal/example/
  2. https://github.com/envoyproxy/go-control-plane/tree/master/examples/dyplomat/
  3. https://docs.solo.io/gloo/latest/guides/dev/writing-upstream-plugins/
  4. WebAssembly Gloo
  5. https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/subsets

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published