Home / Companies / Semaphore / Blog / Post Details
Content Deep Dive

How to Expose Kubernetes Apps Using the Gateway API

Blog post from Semaphore

Post Details
Company
Date Published
Author
Nigel Brown, Dan Ackerson
Word Count
2,327
Language
English
Hacker News Points
-
Summary

Ingress controllers have traditionally managed client traffic to applications in Kubernetes clusters using the Ingress API, which, despite its utility, has limitations such as its terse design and lack of extensibility. Recognizing these shortcomings, the Kubernetes community developed the Gateway API, which achieved General Availability (GA) status in October 2023, to offer a more robust solution for traffic management. The Gateway API introduces several enhancements over the Ingress API, including a role-based system with multiple object types like GatewayClass, Gateway, and HTTPRoute, and support for multiple networking protocols beyond just HTTP. It also provides expanded traffic management features such as traffic splitting and request modifications, alongside a more formal method of extension through policy attachments. The tutorial detailed in the text guides users through configuring ingress traffic to an example application in a local Kubernetes cluster using the Gateway API, employing a local development cluster set up with the Kind tool and the Envoy Gateway implementation. This process involves deploying an application, installing and configuring the Envoy Gateway, creating a GatewayClass and Gateway, defining an HTTPRoute, and finally using a web browser to access the application, demonstrating the Gateway API's capabilities and improvements over the Ingress API.