Introducing Ambassador 0.14: Kubernetes-native, Envoy-powered API Gateway

Today, we’re excited to announce Ambassador 0.14, the next major release of our Kubernetes-native API Gateway built on the Envoy proxy.

Traditional API Gateways have contained a significant amount of availability infrastructure: a highly available persistence store, for example. However, the emergence of Kubernetes dramatically changes the requirements for an API Gateway. Kubernetes provides all the availability infrastructure that is needed for any highly available service — and it’s also been battle tested.

With Ambassador 0.14, we’ve redesigned it to take full advantage of the Kubernetes infrastructure — while providing all the functionality of a traditional API Gateway (e.g., authentication, route mapping, metrics). With this release, Ambassador lets anyone quickly add authentication, dynamic routing, and more to their existing Kubernetes service(s).

With this release, Ambassador now supports:

High availability, zero downtime upgrades

Ambassador 0.14 eliminates its dependency on PostgreSQL. Instead, Ambassador now stores all state information in Kubernetes. This approach enables Ambassador to use Kubernetes to do a zero downtime, safe rollout with automatic health checking.

Auto scaling

Ambassador uses a Kubernetes deployment controller for deployment, enabling horizontal pod auto scaling by Kubernetes for scalability and availability. (Or, just manage this by hand.)

Declarative configuration

Ambassador now uses a declarative configuration syntax similar to Kubernetes. This allows you to store all of your Ambassador configuration under source control.

Full control of Envoy

Ambassador is built on Envoy. And while we want to make every Envoy feature easy-to-use and accessible via Ambassador’s configuration, that doesn’t always make sense. So we’ve added a way for you to customize the envoy.json file yourself so you can do anything that Envoy can do.

Fail-on resilience

Ambassador is now designed to fail on. If the Ambassador process fails, the proxy process remains live and continues to route traffic. Ambassador also includes Kubernetes readiness and liveness probe, so that Kubernetes will automatically restart the container if Ambassador fails.

Diagnostics

Ambassador now includes integrated diagnostics that help you quickly troubleshoot what’s going on with your configuration.

Routing

Ambassador now supports method-based routing. This is handy if you’re adopting a CQRS-style architecture, and want to route POST requests to /foo to one service, while GET requests to /foo go to another service.

Authentication, TLS termination, and observability

And, of course, Ambassador supports authentication, TLS, statistics and monitoring, and routing gRPC.

Give Ambassador a try

We’d love for you to give this new Ambassador a try — our updated quick start should get you going in just 5 minutes.