Gateway API vs Ingress
Gateway API replaces Ingress. The migration.
Idea
Gateway API is the modern replacement for Ingress in Kubernetes. Ingress has been the standard for years; Gateway API addresses limitations of Ingress and adds capabilities. The discipline is understanding the differences and migrating thoughtfully.
What the differences look like:
- Gateway API: more expressive.: Gateway API supports richer routing, better separation of concerns, and explicit role separation. Cluster operators, namespace operators, and application teams have distinct resources.
- Multi-protocol.: Gateway API supports HTTP, HTTPS, TLS pass-through, gRPC, TCP, UDP. Ingress was HTTP-focused; Gateway API extends to more protocols natively.
- Ingress: legacy.: Ingress is mature but limited. The annotation-driven extension model is awkward; advanced features come via vendor-specific annotations; portability suffers.
- HTTP-only.: Ingress is HTTP and HTTPS. Other protocols require workarounds; the resource is not designed for them.
- Role separation.: Gateway API's resources (Gateway, HTTPRoute, others) separate concerns. Cluster operators control Gateway resources; namespace operators control HTTPRoutes; the model fits multi-tenant clusters.
The idea is real progress. Gateway API is the future; Ingress is the past.
Migrate
Migration from Ingress to Gateway API is gradual. Most controllers support both for now; the team can migrate at their pace; the transition is bounded.
- Gateway controllers support both for now.: Modern ingress controllers (ingress-nginx, Envoy Gateway, Traefik, Kong, others) support both Ingress and Gateway API. The team can run both simultaneously; migration is per-route.
- Migrate at your pace.: The team's pace depends on capacity. New routes can use Gateway API; existing routes can migrate when touched; the transition is incremental.
- Per-namespace migration.: Different namespaces can be at different migration stages. The platform team coordinates; application teams migrate their own routes; the rollout is bounded.
- Test before committing.: Each route migration is tested. The Gateway API behavior should match the Ingress behavior; deviations indicate misconfiguration.
- Document the migration.: Each migrated route is documented. The team's progress is visible; the rollout's status is clear.
Migration is gradual. The discipline is sustained over the months or quarters the migration takes.
When
The when depends on the team's situation. New clusters should start with Gateway API; existing clusters can migrate as workloads refresh.
- New clusters: start with Gateway.: When standing up a new cluster, choose Gateway API from the beginning. The team's investment is in the modern resource; no migration is needed later.
- Existing: migrate when next refresh hits.: Existing clusters do not need urgent migration. As workloads are touched (refactored, redeployed, refreshed), the routes can migrate; the disruption is bounded.
- Driven by need.: Some teams have specific Gateway API features they want (multi-protocol, better routing). The need drives the migration; the value is concrete.
- Watch the controller's roadmap.: The team's ingress controller will eventually deprecate Ingress support. The migration timeline aligns with the controller's roadmap; the team plans accordingly.
- Documentation may lag.: Some examples and tooling still assume Ingress. The team's migration is sometimes ahead of available patterns; some workarounds are necessary.
Gateway API vs Ingress is a transition where the destination is clear. Nova AI Ops integrates with cluster networking, surfaces routing patterns, and helps teams navigate the migration thoughtfully.