Kubernetes Gateway API Gains Traction for Service Integration

The Kubernetes Gateway API is emerging as a standard for sharing network infrastructure between platform and application teams. Its role-oriented design uses distinct resources like GatewayClass, Gateway, and HTTPRoute to separate infrastructure management from application routing. This allows platform operators to maintain control while giving developers the autonomy to configure services securely and scalably.

- The Gateway API project was initiated to overcome the limitations of the original Ingress API, which often required vendor-specific annotations for advanced features, leading to a lack of portability between different ingress controllers. The core concepts were first proposed by Bowei Du, a Google software engineer, at KubeCon San Diego in 2019 under the name "Ingress v2". - A key design principle is its expressive, standardized feature set for capabilities like header-based matching, traffic weighting, and other advanced routing that previously depended on non-portable custom annotations. This standardization ensures that configurations are portable across more than 20 available implementations, including offerings from Google Kubernetes Engine, Istio, and Kong. - The API reached General Availability (GA) with version 1.0 in October 2023, signaling its readiness for production use after a nearly four-year collaborative development process involving hundreds of contributors from dozens of companies. This collaborative nature has led to it being called the "most collaborative API in Kubernetes history". - Beyond managing north-south (ingress) traffic, the Gateway API is expanding to handle east-west (service-to-service) traffic within a cluster through the Gateway API for Mesh Management and Administration (GAMMA) initiative, which started in 2022. This allows for a unified approach to managing both ingress and service mesh traffic. - The Gateway API natively supports a wider range of protocols than Ingress. While Ingress was limited to HTTP and HTTPS, the Gateway API is designed to handle L4 protocols like TCP and UDP, in addition to L7 protocols like HTTP and gRPC. - Its component-based structure, using Custom Resource Definitions (CRDs) like `GatewayClass`, `Gateway`, and `HTTPRoute`, allows for a clean separation of concerns. This enables platform teams to manage the underlying infrastructure (`Gateway`) while application developers can independently and safely manage routing rules for their services (`HTTPRoute`). - The API is extensible through features like filters, which allow for the implementation of custom capabilities such as rate-limiting or authentication in a standardized way. It also includes `ReferenceGrant`, a resource for securely referencing resources across different namespaces, enhancing multi-tenancy. - The v1.1 release of the Gateway API graduated service mesh support and `GRPCRoute` to the Standard Channel (GA), allowing for stable, production-ready configurations for both service-to-service traffic and gRPC applications. Future experimental features include `BackendTLSPolicy` for securing connections to backend services and a `Mesh` resource for mesh-wide configurations.

Get your own daily briefing

Scout delivers personalized news, insights, and conversations tailored to your role and industry.

Download on the App Store

Shared from Scout - Be the smartest in the room.