$linuxjunkies
>

ingress controller

also: ingress, API gateway (loose sense)

A Kubernetes component that manages inbound network traffic to services running in a cluster, routing external requests based on hostnames, paths, and other rules.

An ingress controller is a specialized Kubernetes resource that implements HTTP/HTTPS routing logic at the edge of a cluster. It acts as a reverse proxy and load balancer, translating Ingress object rules into actual network configurations that direct external traffic to the correct internal services.

Common ingress controllers include NGINX, HAProxy, and cloud provider-native options like AWS ALB or GCP Cloud Load Balancing. For example, you might define an Ingress rule that directs requests to api.example.com/v1/* to one service and api.example.com/v2/* to another, and the ingress controller enforces that routing.

Ingress controllers typically run as pods within the cluster and watch Ingress resources; when you create or modify an Ingress object, the controller automatically updates its configuration to handle the new routing rules, eliminating the need to manually edit proxy configs for each service.

Related terms