Announcing Contour v1.13.0

Daneyon Hansen
Daneyon Hansen
February 25, 2021

Contour continues to add new features to help you better manage ingress operations in a cluster. Our latest release, Contour 1.13.0, adds several new features. This post will focus on two of the features, support for Gateway API and global rate limiting.

Gateway API

FEATURE STATE: Contour v1.13.0 alpha

Contour now provides alpha support for Gateway API, an open source project to evolve service networking APIs within the Kubernetes ecosystem. Gateway API consists of multiple resources that provide user interfaces to expose Kubernetes applications- Services, Ingress, and more.

Support for Gateway API is implemented across Contour and Contour Operator. This approach aligns with the personas defined by Gateway API. The operator manages infrastructure-level resources, i.e. Gateway, while Contour manages application-level resources such as HTTPRoute.

Refer to the user guide for additional details and to start using Gateway API with Contour.

A big thanks to @stevesloka and @youngnick, for designing and implementing this feature!

Global Rate Limiting

Contour now supports global rate limiting, where Envoy communicates with an external Rate Limit Service (RLS) over gRPC to make rate limit decisions for requests. Envoy is configured to produce 1+ descriptors for incoming requests, containing things like the client IP, header values, etc. Envoy sends these descriptors to the RLS, and the service returns a rate limiting decision to Envoy based on the descriptors and RLS configured rate limits.

To use global rate limiting with Contour, you’ll need to:

  • Choose and deploy an RLS. There is an Envoy rate limit service implementation, but any service that implements the RateLimitService gRPC interface is supported.
  • Configure Contour for the RLS.
  • Add a global rate limit policy to your HTTPProxy.
  • Define rate limits in your RLS config.

Refer to the Contour global rate limiting guide for using the feature with Envoy RLS as an example.

For more information, see:

A big thanks to @skriss for designing and implementing this feature!

Additional Information

Refer to the v1.13.0 release notes for additional information.

Community Thanks!

We’re immensely grateful for all the community contributions that help make Contour even better! For version 1.13, special thanks go out to the following contributors:


Join the Contour Community!

  • Join the Contour Community Meetings
    • For Australia time zones:
      • Every first and third Tuesday at 6:30 PM Eastern Time / 3:30 PM Pacific Time / Wednesday at 9:30 AM Australian Eastern Time.
    • For Americas time zones:
      • Every second and fourth Tuesday at 1 PM Eastern Time / 10 AM Pacific Time
    • Join the mailing list to get an automated invitation to the meeting. This is a low-volume list that is only used for release announcements.
  • Get updates on Twitter (@projectcontour)
  • Chat with us in #contour on the Kubernetes Slack
  • Collaborate with us on GitHub
Related Content
Announcing Contour v1.13.0
Announcing Contour v1.12.0
Ready to try Contour?

Read our getting started documentation.