Open source, Kubernetes-native API Gateway for Microservices built on Envoy

  • RoutingRouting
  • AuthenticationAuthentication
  • FastFast
  • Highly AvailableHighly Available
  • Self-service configurationSelf-service configuration

Map services to arbitrary URLs in a single, declarative YAML file. Configure routes with CORS support, circuit breakers, timeouts, and more. Replace your Kubernetes ingress controller. Route gRPC, WebSockets, or HTTP. Load balance between your different services.

Easily integrate your own authentication service with Ambassador forper-request authentication.

Ambassador uses the high performanceEnvoy Proxy, which processes over 2M requests/second at Lyft. Ambassador runs as a sidecar to Envoy, ensuring that you get raw Envoy performance.

Ambassador uses the proven resilience capabilities of Kubernetes to ensure high availability. For example, Kubernetes is responsible for auto-restarting, auto-scaling, and updating (via a RollingUpdate) Ambassador. Unlike many other API gateways, Ambassador has no database -- it relies on ConfigMap to store state.

Easily and safely configure Ambassador without going through operations -- Ambassador is configured using Kubernetes annotations.

Learn More About Ambassador Features

"Ambassador seemed like the only solution that makes dynamically adding routes easy and the fact that I can do that just by creating a service and annotating it is awesome! Without Ambassador I don’t know how we would have easily made all the different web services comprising Kubeflow available to users."

Jeremy Lewi, Software Engineer, Google Kubeflow

"Ever since the inception of Kubernetes, we’ve witnessed a community of ideas coming together and evolving best practices. Ambassador is one of the building blocks we adopted and are proud to be contributing to."

Alexandre Gervais, Staff Software Engineer at AppDirect

"Regarding Ambassador, all I hear around our company is pure joy."

Carlos Yakimov, Solutions Architect, Falabella

It's easy to get started:

  1. Download and run Ambassador as a Docker container:

    docker run -it -p 8080:80 --name=ambassador --rm --demo
  2. That's it! Check out the diagnostics page at http://localhost:8080/ambassador/v0/diag/.

  3. See Ambassador route requests live to our Quote of The Moment service at

    curl localhost:8080/qotm/

Stay Updated

Ambassador is under active development. Subscribe to get updates and announcements: