How we replaced Ingress-NGINX at Stack Overflow
Summary
Following the November 2025 retirement announcement for Ingress-NGINX, an organization evaluated three Kubernetes Gateway API implementations—NGINX Gateway Fabric, Traefik, and Istio—alongside two Ingress options as backups. The evaluation prioritized fully-conformant implementations, eliminating cloud-specific solutions, and utilized a third-party benchmark and feature matrices. Testing involved analyzing existing Ingress configurations with Claude to define use cases, setting up an HTTPBin and a custom Go web server for backend services, and running scalability benchmarks. Performance tests targeted 10,000 requests per second (RPS) with varying latencies on `e2-standard-4` GCP nodes and `Standard_DC8as_cc_v5` Azure instances. Route creation benchmarks tested convergence for 5,000 HTTPRoutes, later revised to 1,000 routes for stability, and assessed traffic handling during route updates. Istio demonstrated superior stability and performance across all tests, leading to its selection for migration.
Key takeaway
For DevOps Engineers and AI Architects planning a Kubernetes ingress migration, you should prioritize Gateway API implementations that demonstrate robust stability and performance under both high request rates and dynamic route updates. While all options may handle basic use cases, complex integrations and dynamic configurations often necessitate implementation-specific extensions, so validate these early. Consider Istio for its consistent performance and advanced feature set, but be prepared for potential application modifications for complex authorization flows.
Key insights
Migrating from Ingress-NGINX to Gateway API requires thorough evaluation of conformant implementations and their performance under load.
Principles
- Prioritize fully-conformant Gateway API implementations.
- Dynamic header modification often requires implementation-specific extensions.
Method
Analyze existing Ingress objects to define use cases, then benchmark Gateway API implementations for RPS, route creation, and stability during route updates using tools like HTTPBin and K6.
In practice
- Use Claude to categorize existing Ingress configurations.
- Employ HTTPBin for detailed HTTP request/response introspection.
- Test route updates under load to identify latency spikes.
Topics
- Kubernetes Gateway API
- Ingress-NGINX
- Istio
- Traefik
- NGINX Gateway Fabric
Code references
Best for: DevOps Engineer, MLOps Engineer, AI Architect
Related on AIssential
Editorial summary, takeaway, and curation by AIssential. Original article published by Stack Overflow Blog.