Ingress NGINX replacements compared

Ingress NGINX no longer receives releases, bug fixes or security updates after March 2026. This page compares Envoy Gateway, Traefik, Kong Ingress Controller and APISIX Ingress Controller on migration effort, Gateway API support and licensing so you can shortlist the right replacement.

On this page

Which Ingress NGINX replacement fits your cluster?

Existing Ingress NGINX deployments keep running, but they receive no further releases, bug fixes or security updates after March 2026, so the decision is which replacement causes the least rework for your cluster. For the smallest annotation rewrite, Traefik is the strongest starting point, because its Kubernetes Ingress NGINX provider supports many ingress-nginx annotations. Choose Envoy Gateway if your team is standardizing on Gateway API resources, and choose the Kong Ingress Controller or the APISIX Ingress Controller if you already run Kong or APISIX as a gateway and want one set of operational skills.

Traefik's advantage is the migration path, not the end state. Annotation support means many existing Ingress objects can move with minimal changes, but you should still inventory every annotation in use, test each one against the provider's documentation, and confirm which ones are supported before cutover. Traefik also supports the Kubernetes Gateway API provider, so you can plan a later move to Gateway API resources without changing gateways again. Envoy Gateway runs on Gateway API resources from the start, and its documentation covers air-gapped installs and Helm, Argo CD or Flux CD deployment. That fits platform teams willing to rewrite Ingress objects, but expect more upfront effort than an annotation-compatible path.

Kong and APISIX controllers make sense when the gateway team already operates those products, because policies, plugins and runbooks carry over. Kong's open-source line stays on the 3.9 series, and its version support policy applies only to Kong Gateway Enterprise, so confirm with Kong which support window and edition you need. The APISIX Ingress Controller has no supplied facts of its own in this comparison, so confirm its maintainers, release cadence, Gateway API coverage and annotation behavior directly before you commit.

Which Ingress NGINX replacement suits each team

This table maps common team situations to the replacement most likely to fit, with the condition that makes each choice hold. Read each row against your own cluster, annotation inventory and deadline, and treat any annotation support as something to verify before migration begins.

ScenarioBest fitWhy
Many ingress-nginx annotations and a tight deadlineTraefik with its ingress-nginx annotation supportTraefik's Kubernetes Ingress NGINX provider supports many ingress-nginx annotations, so migration may need minimal configuration changes. This holds only for the annotations your cluster uses, so run each one against the Traefik documentation and a staging cluster before cutover.
Platform team standardizing on Gateway APIEnvoy GatewayEnvoy Gateway is built around Gateway API resources, which it uses to provision and configure the managed Envoy proxies. This fits when Gateway API is the target standard, and you should confirm that the specific route and policy features you need are available in the release you deploy.
Team already running Kong or APISIX as an API gatewayKong Ingress Controller or APISIX Ingress Controller, matched to the existing gatewayKeeping one gateway product reduces the number of plugin sets, policies and operational runbooks to maintain. The choice holds only if the existing gateway's open-source edition covers your plugin and licensing needs, since Kong's newer releases ship in Kong Gateway Enterprise.
Team that wants a standalone proxy outside KubernetesTraefik or Envoy Gateway in standalone modeTraefik runs as a single Go binary or Docker image and supports file configuration, which suits non-Kubernetes routing. Envoy Gateway documents a standalone deployment mode outside Kubernetes. Confirm which mode matches your operating model before committing.
Air-gapped or regulated environmentEnvoy Gateway, after confirming offline install stepsEnvoy Gateway's documentation includes guides for air-gapped deployment, and its Apache-2.0 license is clear for internal review. Ask the vendor or project for the exact offline artifacts and image sources, and check that your own compliance controls accept the chosen install path.
Team needing an Apache-2.0 controller with commercial support optionsKong Ingress ControllerThe Kong Ingress Controller is Apache-2.0 licensed and is Kong's official Kubernetes controller. Confirm which features require Kong Gateway Enterprise or Konnect, since the open-source edition's support window is not covered by Kong's version support policy.
Team that must decide licensing before any engineering workTraefik for MIT terms, Envoy Gateway for Apache-2.0 termsBoth are permissively licensed open-source projects, but the commercial add-ons (such as Traefik Hub or Traefik Enterprise) are separate products. Confirm with legal which components your deployment will use, and avoid assuming paid features are included.

How much migration effort each option asks for

Traefik is the option where the migration starts closest to what teams already run. Its Kubernetes Ingress NGINX provider supports many ingress-nginx annotations, so teams can move from the retired controller with minimal configuration changes, according to the Traefik documentation. The effort sits in checking which annotations your manifests actually use, because support covers many annotations, not every one.

  • Annotation inventory: List every nginx.ingress.kubernetes.io/ annotation in use, including those on Ingress objects owned by application teams, and check each one against the provider's supported list.
  • Custom snippets: Configuration snippets and custom NGINX templates do not carry over automatically and must be rewritten as Traefik middleware or removed.
  • Authentication flows: Test external auth, basic auth and session behavior end to end, since a manifest that applies cleanly does not prove users log in the same way.
  • Native objects: Teams that move to Traefik's CRDs or Gateway API resources rewrite beyond the annotation layer, which adds work but reduces dependence on the compatibility layer over time.
  • Who does the work: The platform team usually owns the inventory and cutover, and a consultant or vendor helps when the annotation footprint is large or spread across many namespaces.

Check your annotation list against the provider documentation for the exact Traefik version you plan to deploy.

How each Ingress NGINX replacement compares on Gateway API and licensing

This table compares Envoy Gateway, Traefik, Kong Ingress Controller and APISIX Ingress Controller on license, release, Gateway API support, ingress-nginx annotation migration, authentication, extensions, deployment modes, air-gapped guidance and commercial tiers. Where a cell says to confirm, the public information available for this comparison does not settle the point, so check it with the project or vendor before you shortlist. Envoy Gateway and Traefik have the clearest published Gateway API support, and Traefik is the only option here with documented ingress-nginx annotation support.

CapabilityEnvoy GatewayTraefikKong Ingress ControllerAPISIX Ingress Controller
LicenseApache-2.0 (OSI-approved)MIT (OSI-approved) for Traefik ProxyApache-2.0 (OSI-approved) for the controllerApache APISIX core is Apache-2.0; confirm the controller's license
Latest release named in the factsv1.9.2 and v1.8.5, published September 28, 2026v3.7.15 and v2.11.59, published October 15, 2026v3.5.13, published August 7, 2026Apache APISIX 3.19.0 (gateway), September 28, 2026; confirm controller release
Gateway API supportYes. Uses Gateway API resources to provision and configure Envoy proxiesYes, through its Kubernetes Gateway API providerConfirm controller support and supported Gateway API versionsConfirm controller support and supported Gateway API versions
ingress-nginx annotation supportMigration guide covers Ingress resources; confirm how ingress-nginx annotations mapSupports many ingress-nginx annotations for minimal configuration changesConfirm which ingress-nginx annotations map to its pluginsConfirm annotation coverage with the project before planning migration
Authentication optionsAPI key, basic, JWT, OIDC, external authorization, mutual TLS, IP lists, CORS, rate limitingConfirm authentication middleware options for your versionJWT, basic auth, OAuth and ACL plugins in Kong Gateway; confirm controller coverageConfirm authentication plugins in the controller version you deploy
Extension modelWasm, Lua, dynamic modules, external processing and an extension serverConfirm the extension model for your versionPlugin-based; gateway plugins extend routing, auth and transformationLua plugins in worker processes, external plugin runners, experimental WebAssembly
Providers or deployment modesStandalone outside Kubernetes or on Kubernetes; Helm, Argo CD or Flux CD installsKubernetes Ingress, CRD and Gateway API, plus Docker, Swarm, ECS, Consul, Nomad and fileKubernetes; gateway topologies are traditional, DB-less and hybrid. Confirm controller modesTraditional and decoupled etcd topologies with file or API configuration (gateway); confirm controller
Air-gapped guideYes, the documentation includes an air-gapped deployment guideConfirm offline installation steps with TraefikConfirm offline installation steps with KongConfirm offline installation steps with the project
Commercial tierConfirm commercial support options with the project or vendorsTraefik Hub and Traefik Enterprise; commercial support through Traefik.ioKong Gateway Enterprise, including fully self-hosted gateways with local control and data planesConfirm any commercial edition or support provider

What each replacement is and where it stops

Each option below is a current open-source choice for ingress or Gateway API traffic. They differ most in whether they follow the Gateway API, whether migration keeps your existing annotations, and which commercial line holds the newest features.

Envoy Gateway: Gateway API first

Envoy Gateway manages Envoy Proxy through Gateway API resources, so the routes you write are the objects the controller reads. It is Apache-2.0 licensed and runs inside Kubernetes or as a standalone gateway outside it. Its documentation covers API key, basic, JWT and OIDC authentication, external authorization, mutual TLS, CORS and rate limiting, and it can be extended with Wasm, Lua, dynamic modules, external processing and an extension server. Choose it when Gateway API is your long-term contract and your team can tune Envoy. Check the project's compatibility matrix against your Kubernetes and Envoy Proxy versions before upgrading.

Traefik: annotation-compatible migration

Traefik is a MIT-licensed reverse proxy and load balancer shipped as a single Go binary and an official Docker image. Its Kubernetes Ingress NGINX provider supports many ingress-nginx annotations, so teams can move with minimal configuration changes. It also reads Docker, Swarm, Consul, Nomad, ECS and file configuration, which suits mixed estates. Traefik Hub (Kubernetes-native API management) and Traefik Enterprise (an API gateway) are separate commercial products, so confirm which features you need. Check each annotation your ingresses use against the provider's supported list before cutover.

Kong Ingress Controller: Kong plugin estate

Kong Ingress Controller is Kong's official ingress controller for Kubernetes and is Apache-2.0 licensed. It is tied to the Kong Gateway line, where the open-source releases stay on the 3.9 series and newer Enterprise releases ship under the commercial license. Pick it if your team already runs Kong plugins or decK-managed configuration and accepts that the newest gateway features sit on the commercial line. Before committing, confirm which controller release pairs with the gateway version you plan to run, and confirm that your required plugins work on the open-source build.

APISIX Ingress Controller: confirm first

The APISIX gateway is Apache-2.0 licensed, built on NGINX and ngx_lua with LuaJIT, and stores configuration in etcd in its traditional and decoupled topologies. Its plugins run Lua inside worker processes, with other languages supported through external plugin runners. This page does not establish the license or Gateway API status of the APISIX Ingress Controller itself, so check both in its repository before shortlisting it. Choose the APISIX line when you want etcd-backed dynamic configuration and Lua plugins, and your team can operate etcd alongside the gateway.

Where open-source licenses end and paid editions begin

All four controllers in this comparison, Envoy Gateway, Traefik, the Kong Ingress Controller and the APISIX Ingress Controller, carry open-source licenses, so the licensing question is less about the controller itself and more about the products built around it. Start by mapping which features your migration depends on to which edition provides them. The license on the controller does not tell you which edition holds the features you need, and that gap is where surprises tend to appear.

Kong shows the gap most clearly. The open-source Kong/kong repository is Apache-2.0 licensed, but its releases stay on the 3.9 line, with 3.9.4 released on October 12, 2026. Kong Gateway Enterprise is at 3.16, released September 15, 2026, and Kong's version support policy applies only to Enterprise, so it publishes no support window for the open-source edition. Kong's pricing page places fully self-hosted gateways with a local control plane and data plane in the commercial Enterprise offering, and Kong Gateway 3.10 removed the unlicensed free mode from Enterprise. Ask Kong in writing which edition you would run, what its support window is, and whether your topology needs Enterprise features before you pick the Kong Ingress Controller, which is Apache-2.0 licensed with release v3.5.13 published August 7, 2026.

Traefik separates its open-source proxy from commercial products. Traefik Proxy is MIT-licensed, and its Kubernetes Ingress NGINX provider is the migration path most relevant here. The Traefik documentation separates Traefik Hub, described as Kubernetes-native API management, from Traefik Enterprise, described as an API gateway, and the README directs commercial support requests to Traefik.io. Confirm with Traefik which capabilities you need, such as API management or commercial support, are in Hub or Enterprise rather than the proxy, and check how long each Traefik version is supported, since the project usually ships three or four minor versions a year and supports each until the next release.

How to choose and pilot a replacement

This sequence turns the retirement of Ingress NGINX into a documented, reversible decision: you inventory what you run, shortlist two controllers, prove the choice in a pilot, and leave with a cutover and rollback plan you can hand to change control.

  1. Inventory every ingress resource

    Platform or cluster engineers list every Ingress object, IngressClass and ingress-nginx annotation and configuration snippet across all clusters, including Helm values and GitOps repositories that generate them. Export the list with the owning team, the hostname, the TLS source and whether the route carries authentication, rate limits or custom server blocks. Snippets and custom templates are the items most likely to need rewriting, so flag them first. The step is done when every route is in one inventory and each has an owner.

  2. Classify each annotation and snippet

    Working with the application owners, sort each item into supported, rewritable or unsupported. Supported means the candidate controller accepts the same annotation with the same behavior, which you must confirm in its documentation rather than assume. Rewritable means the intent maps to Gateway API resources or a controller-specific policy. Unsupported means the behavior needs a redesign or a plugin you have not yet verified. Record the classification in the inventory. The output is a short list of blockers that will drive the controller shortlist.

  3. Shortlist two controllers

    Choose two candidates from Envoy Gateway, Traefik with its Ingress NGINX provider, Kong Ingress Controller and the APISIX Ingress Controller, based on the blockers from the previous step. Confirm the licence of each controller and of the gateway it runs, and whether any feature you need sits in a paid edition. Ask each vendor or project in writing which annotations it supports, which Gateway API version it targets and what its support window is for the release you would deploy. The step is done when you have a written comparison for two options that your architects accept.

  4. Pilot on one non-critical namespace

    Deploy both shortlisted controllers into a test cluster or one low-risk namespace, and move a representative set of routes from the inventory, including at least one route with authentication and one with TLS passthrough or custom headers. Run the same traffic tests against each and record latency, error rates and the number of manual edits each route needed. Because existing Ingress NGINX deployments keep working after retirement, this pilot does not need a compressed schedule. Done means a results sheet that compares the two controllers on the same routes.

  5. Check Gateway API conformance and auth flows

    Test the Gateway API resources each controller generates against the conformance results it publishes, and confirm which features are in scope for your version. Then test every authentication flow your applications depend on, such as OIDC, JWT validation, mutual TLS, external authorization and IP allow lists, end to end with a real identity provider in the pilot environment. Ask each vendor which of these features are included in the open-source edition and which require a commercial license. The output is a pass or fail record per flow, with any gap logged as a blocker or an accepted risk.

  6. Document the security and operations model

    Security and platform teams review how each candidate handles certificate management, logging, metrics, upgrades and the separation of control and data planes. Confirm the upgrade path and release cadence for each controller in writing, including how long each version receives fixes. Identify who will own the controller after go-live and what runbooks they need. The step is done when the review produces a signed decision record that names the controller, the reasons and the open risks.

  7. Plan cutover and rollback

    Platform engineers write a cutover plan that moves routes in batches, keeps the existing Ingress NGINX controller running in parallel, and uses DNS or load balancer weights to shift traffic gradually. Each batch needs a named owner, a health check that confirms success and a rollback step that restores the previous route. Schedule removal of the old controller only after every batch has stayed healthy through an agreed observation period. The output is an approved runbook and a rollback test that you have rehearsed in the pilot environment.

What running each controller asks of your platform team

The work does not end at cutover. Each controller brings its own upgrade rhythm, and that rhythm sets how often your platform team must test, roll and document changes. Traefik usually ships three or four minor versions a year, and each version is supported until the next one is released, so a team on an older minor will need to move on a steady schedule. Envoy Gateway publishes a compatibility matrix between its releases, Envoy Proxy and Kubernetes versions, which you should check against your cluster version before every upgrade. For Kong, confirm which line you are on: the open-source repository's releases stay on the 3.9 line, while the version support policy covers only Kong Gateway Enterprise, so an open-source deployment has no published support window to plan around.

Certificate handling and observability are the next recurring duties. Traefik includes Let's Encrypt support, including wildcard certificates, and exposes Prometheus and other metrics, which you should wire into your existing alerting before cutover. For Envoy Gateway and Kong Ingress Controller, confirm how TLS secrets are issued, rotated and reloaded in your environment, and which metrics endpoints are available for scraping. Keeping configuration in Git is the control that makes the rest manageable. Kong's decK tool exports and syncs declarative files, and Envoy Gateway supports installation with Helm, Argo CD or Flux CD, so decide which of these fits your GitOps practice and who approves changes.

Several factors push this effort up. Running the old Ingress NGINX controller alongside the new one during migration doubles the number of components to patch, monitor and document until the last route moves. An air-gapped install adds work because you must mirror images, charts and any extension artifacts into your registry and repeat that for every upgrade; Envoy Gateway documents an air-gapped deployment guide that you should review early. Finally, ask each vendor or project to confirm its end-of-support dates, release cadence and security advisory channel in writing, and build those dates into your change calendar before you commit to a controller.

Questions buyers ask before hiring outside help

What does an Ingress NGINX migration cost, and what does the quote cover?

Cost depends on the written scope, which is the only basis for a quote. DeployOpen does not publish a price list. Most engagements are fixed-scope, so scope, deliverables and timelines are agreed in writing before work starts. Ask the quote to list the controllers and clusters in scope, the number of Ingress objects and annotations to convert, any custom snippets, the authentication flows to rebuild, the testing and cutover steps, and the documentation handed over. Ongoing support, upgrades and continuous testing are separate retainers, so ask whether they are included or quoted apart. Your own internal time for change approvals and application owner testing is a cost the quote will not cover.

How long does an Ingress NGINX migration take?

The timeline is driven by the work in your clusters, not by a fixed duration. The main drivers are the number of Ingress resources, how many ingress-nginx annotations each one uses, whether you rely on custom configuration snippets that need rewriting, and how many authentication and authorization flows must be rebuilt on the new controller. Traefik documents support for many ingress-nginx annotations, which can reduce conversion work, but you still need to test each route. Envoy Gateway and the Kong Ingress Controller use Gateway API resources or their own configuration, so rules are translated rather than copied. Ask for a timeline that breaks out inventory, conversion, testing, parallel running and cutover.

What does the migration need from our team?

Plan for access and decisions, not just effort. The engagement needs cluster access with appropriate permissions, a current inventory of Ingress objects and annotations, and a named owner for each application. You must own or control the DNS records and TLS certificates that point at the current controller, because cutover changes where traffic lands. Agree change windows with application owners in advance, and confirm who approves production changes. Ask whether the work runs in your cloud account, data center or air-gapped network, since that affects tooling and access paths. Good preparation shortens the scoping phase and reduces surprises at cutover.

Can our platform team migrate off Ingress NGINX without outside help?

Yes, many platform teams can, provided they have Kubernetes depth and time to test. Start by confirming your current version and inventory. Kubernetes SIG Network and the Security Response Committee announced on November 11, 2025 that Ingress NGINX would get best-effort maintenance until March 2026 and then no further releases, so plan within that reality. Envoy Gateway publishes guides for migrating from Ingress resources, and Traefik documents its ingress-nginx annotation support. Outside help makes most sense when you have many clusters, complex snippets, regulated change control, or no spare capacity for parallel running and rollback testing. Your team will still own operations after handover.

Are our existing Ingress NGINX clusters at risk today?

Existing deployments keep working after retirement, but they stop receiving updates. The Kubernetes blog states that after March 2026 Ingress NGINX gets no further releases, bug fixes or security updates. That makes the risk a patching and exposure risk that grows over time, not an immediate outage. Your security team should record the running version, assess internet exposure and any known issues in the components you run, and decide on a replacement path with a date. The InGate project, once planned as a successor, never matured and is also being retired, so do not wait for it. Confirm the exact risk with your own vulnerability management process.

Which license questions should we confirm before choosing a commercial tier?

Confirm the license of each component you will run, and which features sit behind a paid edition. The Kong Gateway open-source repository is Apache-2.0, but its releases stay on the 3.9 line, while newer releases ship in Kong Gateway Enterprise. Kong's pricing page states that fully self-hosted gateways with a local control plane and data plane are part of the commercial offering. Traefik Proxy is MIT-licensed, but Traefik Hub and Traefik Enterprise are separate products. Envoy Gateway and the Kong Ingress Controller are Apache-2.0. Ask each vendor in writing which features, support windows and deployment modes your design needs, and whether any of them requires a commercial license.

How DeployOpen scopes and delivers an Ingress NGINX migration

DeployOpen plans, implements, integrates, hardens, documents and supports self-hosted open-source platforms inside the client's own clusters and networks. Engagements for Ingress NGINX replacements start with a written, fixed scope that covers the candidate controller, the cluster and the cutover plan.

How we scope

  • Inventory every Ingress NGINX annotation, snippet and custom template your clusters actually use.
  • Agree in writing which controller, Gateway API resources and TLS setup are in scope.
  • Confirm the cutover window, rollback path and environments that must be covered before work starts.

How we build

  • Deploy the chosen replacement alongside the existing controller so traffic can move route by route.
  • Translate Ingress rules and annotations into the target controller's configuration, then test each route.
  • Harden the new gateway with the authentication, TLS and rate limiting controls your policies require.

How we hand over

  • Document the final configuration, deployment method and every annotation that changed meaning.
  • Deliver runbooks for upgrades, certificate rotation, rollback and day-to-day troubleshooting.
  • Provide compliance-ready evidence of configuration and testing, while auditors and certification bodies issue any assessment.

How we support

  • Ongoing support, upgrades and continuous testing are available as a retainer after handover.
  • Plan controller version upgrades against the release and support windows your chosen project publishes.
  • Ask any provider, including DeployOpen, to confirm response scope and upgrade responsibility in the written quote.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.