Compatibility
Compare API7 Ingress Controller and APISIX Ingress Controller releases, Helm charts, container images, provider types, controller names, Kubernetes versions, and Gateway API support.
Applies to:API7 Ingress Controller (drives API7 Gateway)APISIX Ingress Controller (drives Apache APISIX)
API7 Ingress Controller (API7 IC) and APISIX Ingress Controller (APISIX IC) are built and released separately. This page is the one place that states, for each of them, what the current release is, which chart and image it ships as, how it is pointed at a gateway, and which Kubernetes and Gateway API versions it needs.
Releases, Charts, and Images
| Item | API7 Ingress Controller | APISIX Ingress Controller |
|---|---|---|
| Current release | 2.2.1 | 2.2.0 |
| Source repository | github.com/api7/api7-ingress-controller | github.com/apache/apisix-ingress-controller |
| Container image | api7/api7-ingress-controller | apache/apisix-ingress-controller |
| Helm repository | https://charts.api7.ai | https://apache.github.io/apisix-helm-chart |
| Helm chart | api7/api7-ingress-controller | apisix/apisix-ingress-controller, or the apisix/apisix umbrella chart with ingress-controller.enabled=true |
| Current chart version | 0.1.28 (app version 2.2.1) | 1.3.1 (app version 2.2.0) |
provider.type | api7ee (chart default); the binary also accepts apisix and apisix-standalone | apisix (chart default) or apisix-standalone; api7ee is not built into this binary |
controller_name | apisix.apache.org/apisix-ingress-controller by default; the installation examples in this documentation set api7.ai/api7-ingress-controller | apisix.apache.org/apisix-ingress-controller by default |
There is no APISIX Ingress Controller 2.2.1. Release numbers have been aligned since 2.1.0 by editorial convention, so the same number on both sides is not the same build, and a number can exist on one side only. See Release Notes.
charts.api7.ai also serves an unrelated legacy chart named apisix-ingress-controller (version 0.14.0, app version 1.8.0, published in 2024). Install api7/api7-ingress-controller, not api7/apisix-ingress-controller.
Kubernetes and Gateway API
| Item | API7 Ingress Controller | APISIX Ingress Controller |
|---|---|---|
| Kubernetes | 1.31 or later | 1.31 or later |
| Gateway API | 1.6.0 | 1.6.0 |
| Custom resource API group | apisix.apache.org | apisix.apache.org |
| Annotation prefix | k8s.apisix.apache.org | k8s.apisix.apache.org |
The Kubernetes floor for both controllers is higher than the 1.25 or later that Supported Versions and Interoperability (opens in API7 Gateway docs) states for the API7 Enterprise control plane and data plane. A cluster that runs API7 Enterprise is not necessarily new enough to run API7 Ingress Controller; check the cluster version against 1.31 before installing.
Both controllers ship the same 12 custom resource definitions at 2.2.x: ApisixConsumer, ApisixGlobalRule, ApisixPluginConfig, ApisixRoute, ApisixTls, ApisixUpstream, BackendTrafficPolicy, Consumer, GatewayProxy, HTTPRoutePolicy, L4RoutePolicy, and PluginConfig. See Custom Resource Definitions API Reference.
Controller and Gateway Versions
| Controller | Gateway | Supported gateway versions |
|---|---|---|
| API7 Ingress Controller 2.2.1 | API7 Gateway (through the API7 control plane) | To be confirmed |
| APISIX Ingress Controller 2.2.0 | Apache APISIX, standalone (API-driven) mode | APISIX 3.13 or later. Apache documents 3.13 or later for APISIX Ingress Controller 2.0.0 and later in standalone mode; no version-specific row for 2.2.0 has been published |
| APISIX Ingress Controller 2.2.0 | Apache APISIX, traditional (etcd) mode | To be confirmed |
Apart from the standalone-mode floor above, no controller-to-gateway version matrix has been published by either project: the upstream APISIX table stops at the 2.1.0 row and no row exists for 2.2.0. For API7 Gateway, the API7 Dashboard generates a deployment script pinned to the gateway group you install into, so the pairing is resolved at install time rather than stated in advance. Ask API7 support before pinning a controller release against a specific API7 Gateway release.
Defaults That Differ by Chart
Two settings have the same default in both binaries but are written explicitly by the charts, so the installed behavior is decided by the chart, not by the controller.
| Setting | API7 chart | APISIX chart |
|---|---|---|
listener_port_match_mode | off | auto |
sync_period | 1h | 1m |
Explicit chart values override either setting. See Helm Charts and Configuration File.
Licensing and Support
The ingress controller chart requires no license key on either side; licensing for API7 Enterprise sits in the API7 control plane chart. The API7 Ingress Controller chart names support@api7.ai as its maintainer contact, and issues can also be filed in github.com/api7/api7-ingress-controller. APISIX Ingress Controller is an Apache Software Foundation project and is supported through github.com/apache/apisix-ingress-controller.
The support tier and any service-level commitment for API7 Ingress Controller are to be confirmed.