Overview
Migrate from the legacy Kubernetes Ingress API to the Gateway API (HTTPRoute, GRPCRoute, Gateway CRDs), the future-standard networking API that Traefik already supports.
Why
The Ingress API is feature-frozen. Gateway API is the official successor with:
- Standardized routing across vendors (no more
traefik.ingress.kubernetes.io/ annotations)
GRPCRoute for native gRPC routing without workarounds
HTTPRoute filters for request/response manipulation
- Per-route timeout, retry, and header policies
- Split traffic / canary deployments at the routing level
- Already supported by Traefik v3+
Migration path
# Before (Ingress)
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
spec:
rules:
- host: app.fredcorp.com
http:
paths:
- path: /
backend:
service:
name: app
port:
number: 80
# After (HTTPRoute)
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: app
spec:
parentRefs:
- name: traefik-gateway
namespace: traefik
hostnames:
- app.fredcorp.com
rules:
- matches:
- path:
type: PathPrefix
value: /
backendRefs:
- name: app
port: 80
Phases
- Enable Gateway API CRDs and Traefik Gateway provider
- Create
Gateway resources (internal + external)
- Migrate apps one by one (non-breaking alongside existing Ingress)
- Remove legacy Ingress resources
Notes
Reference
Overview
Migrate from the legacy Kubernetes
IngressAPI to the Gateway API (HTTPRoute,GRPCRoute,GatewayCRDs), the future-standard networking API that Traefik already supports.Why
The
IngressAPI is feature-frozen. Gateway API is the official successor with:traefik.ingress.kubernetes.io/annotations)GRPCRoutefor native gRPC routing without workaroundsHTTPRoutefilters for request/response manipulationMigration path
Phases
Gatewayresources (internal + external)Notes
Gatewayas a cert target)HTTPRouteas a source)Reference