Contour is a high-performance ingress controller for Kubernetes which provides the control plane for the Envoy edge and service proxy.
Contour is currently listed as a Cloud Native Computing Foundation Incubating project meaning it has to cross over from being used by the early majority to the late majority before graduating.
The project supports dynamic configuration updates and multi-team ingress delegation out of the box while maintaining a lightweight profile.
“Getting an application up and running is not always the entire story; it may still need a way for users to access it. Filling that operational gap is what Contour was designed to do by providing a way to allow users to access applications within a Kubernetes cluster,” the team behind the project wrote in a post.
It offers a simple installation mechanism to quickly deploy and integrate Envoy, it safely supports ingress in multi-team Kubernetes clusters, offers clean integration with the Kubernetes object model, and provides dynamic updates to ingress configuration without dropped connections.
The project was formed to introduce a new Custom Resource Definition (CRD) that allows for a new data model called IngressRoute and enhances what Ingress can do today by enabling new features not previously possible.
IngressRoute was designed to provide a sensible home for configuration parameters as well as to share an ingress controller across multiple namespaces and teams in the same Kubernetes cluster through delegation. The delegation concept patterns off of the way a subdomain is delegated from one domain name server to another, and allows for teams to define and self-manage IngressRoute resources safely, the team explained.