Today we are excited to announce Heptio Contour, an open source extension to Kubernetes that provides a modern and reliable way to direct internet traffic into a cluster using the Envoy project. You can now use Envoy through Heptio Contour to provide incoming load balancing to expose services from your cluster.

Over the past year we have seen Kubernetes take off across organizations of all sizes. At Heptio we have been working hard to both fill some of the operational gaps in the platform and make it richer. Heptio Ark makes it easier to backup and restore clusters, and Heptio Sonobuoy and Sonobuoy Scanner make it easier to find and resolve issues with cluster deployments. While Kubernetes is rapidly maturing and becoming a viable platform for stateful workloads, most customers start their journey to cloud native by running stateless front ends on the platform.

One of the most critical needs in running web centric workloads at scale with Kubernetes is efficient and smooth traffic ingress management at the L7 level. Since the first Kubernetes ingress controllers were developed, Envoy (developed by Matt Klein and the Lyft team) has emerged as a new force in the cloud native ecosystem. We favor Envoy since it is a CNCF hosted project and was built from the ground up to work in a dynamic cloud native environment like Kubernetes.

Heptio Contour is an Apache 2.0 licensed open source project that offers a simple, minimalist integration of Envoy into the Kubernetes project as an ingress controller. We have worked with the Envoy team to ensure that the implementation is clean, so that Kubernetes users will be able to benefit from the innovation and richness of this platform.

Heptio Contour offers the following benefits for users:

A simple installation mechanism to quickly deploy and integrate Envoy

Clean integration with Kubernetes object model

Dynamic updates to ingress configuration without having to restart the underlying load balancer

As the project matures, will allow access to powerful Envoy features like circuit breaking, a pluggable filter chain, and increased observability and debuggability.

The Contour project is available as a 0.1 release today on Github. It is an early preview release that we will continue to develop in the open with the community. We invite you to check it out and will be looking forward to working with the Kubernetes and Envoy communities to continue to refine and enrich the integration.