EVERYTHING XIAOMI
Get listed

OpenNJet Ingress Controller

OpenNJet Ingress Controller, also called OpenNJet KIC, is a free, Apache-2.0 Kubernetes Ingress Controller for self-hosted deployments.

Place
#21 of 28
Score
5.3
OpenNJet Ingress Controller's website

What OpenNJet Ingress Controller is

OpenNJet Ingress Controller, also called OpenNJet KIC, is a free, Apache-2.0 Kubernetes Ingress Controller for self-hosted deployments. Built on the OpenNJet proxy, it handles host and path routing, dynamic locations and upstreams, load balancing, canary releases, TLS termination with SNI, TCP and UDP proxying, and WebSocket traffic. TCP and UDP proxy configuration can change through APIs without reloading OpenNJet. Ingress and VirtualServer resources can be assigned to controller instances by IngressClass, reducing configuration handled by each instance, and routing can cross Kubernetes namespaces. TransportServer resources provide active TCP health checks that change backend availability according to port responses. Headers on client requests and proxied responses can be modified. Access logging is configurable globally or per application. A ConfigMap can change worker-process counts from 1 to 512 or use an automatic CPU-based default. Deployment uses Kubernetes manifests and includes a NodePort service.

Good

  • Free Apache-2.0 license
  • Supports canary routing
  • Handles TCP, UDP, and WebSocket traffic
  • Dynamic proxy updates avoid reloads
  • Active TCP health checks

Watch out

  • Several ports are reserved
  • Worker count is limited to 1–512
  • Requires self-hosted Kubernetes deployment

Who it suits

It suits Kubernetes operators needing self-hosted ingress routing, canary traffic, protocol proxying, and dynamic configuration. Teams can also connect KIC with an ADC for front-end load balancing.

Verdict

OpenNJet KIC combines broad Kubernetes routing features with dynamic proxy and scaling controls. Review its reserved ports and manifest-based deployment before adopting it.

The facts

Each one read from OpenNJet Ingress Controller's own pages, with the date it was checked.

What it does

Access logs
Access-log settings, including whether logging is enabled and the log file path, can be set per application or globally through an njet-config ConfigMap; per-application settings take priority.checked 7 Oct 2026
ADC integration
KIC can register service domains, application pools and a virtual server with an ADC, which can act as the KIC service's front-end load balancer.checked 8 Oct 2026
Cross-namespace routing
Ingress and VirtualServer configurations can route across Kubernetes namespaces.checked 8 Oct 2026
Deployment
The project README describes deploying KIC to Kubernetes using manifests, including namespace, service account, ConfigMap, IngressClass, custom resources, RBAC, Deployment and NodePort service.checked 8 Oct 2026
Distribution
The maker links to the OpenNJet KIC user manual and source code from the release article.checked 7 Oct 2026
Dynamic changes
TCP and UDP proxy configuration updates use APIs and avoid reloading OpenNJet.checked 8 Oct 2026
Dynamic TCP and UDP
TCP and UDP proxy configuration can be updated dynamically without reloading OpenNJet.checked 7 Oct 2026
Health checks
TransportServer resources support active TCP health checks that can bring backends online or offline based on check results.checked 8 Oct 2026
HTTP headers
KIC can modify client request headers and proxied-service response headers, including custom and HTTP-standard headers.checked 7 Oct 2026
Ingress processing
Ingress and VirtualServer custom resources can be divided among KIC instances by IngressClass to reduce the configuration load handled by each instance.checked 8 Oct 2026
Ingress scaling
Its sharding mechanism assigns Ingress and VirtualServer resources to KIC instances by IngressClass to reduce the configuration load handled by each KIC type.checked 7 Oct 2026
License
The project repository displays an Apache-2.0 license.checked 8 Oct 2026
Port constraints
Ports 80, 443, 12001–12004, 8080, and 8081 are reserved for proxying, control-plane, upstream, status, or readiness functions and cannot be used by proxied services.checked 7 Oct 2026
Protocols
It supports TCP, UDP and WebSocket proxying.checked 8 Oct 2026
Purpose
OpenNJet KIC is a Kubernetes Ingress Controller built on OpenNJet proxy for cloud-native traffic management.checked 8 Oct 2026
Routing
It provides dynamic locations, host and path routing, load balancing, dynamic upstreams, canary releases, TLS termination and SNI.checked 8 Oct 2026
Source access
The maker's site links to the KIC source repository on Gitee.checked 8 Oct 2026
Support
The maker's page lists [email protected] and [email protected] mailing lists and QQ technical discussion group 607280080.checked 8 Oct 2026
Traffic management
It provides dynamic locations, host and path routing, load balancing, dynamic upstreams, canary releases, TLS termination and SNI, TCP and UDP proxying, and WebSocket support.checked 7 Oct 2026
Worker configuration
A ConfigMap can dynamically change the NJet worker-process count, with allowed values from 1 to 512 and an automatic CPU-core-based default.checked 7 Oct 2026
Worker limit
The worker-processes setting accepts values from 1 to 512 and defaults to auto based on CPU core count.checked 8 Oct 2026

Alternatives to OpenNJet Ingress Controller

All alternatives
  1. 1ngrok logo

    ngrok

    Free planWebAPILinuxmacOS
    7.8From $10 a month
  2. 2Higress logo

    Higress

    Free planOpen sourceWebAPILinuxmacOS
    7.7Free plan
  3. 3Traefik Proxy logo

    Traefik Proxy

    Free planOpen sourceWebAPILinuxmacOS
    7.7Free plan
  4. 4agentgateway logo

    agentgateway

    Free planOpen sourceWebAPILinuxmacOS
    7.5Free plan
  5. 5

    Kusk Gateway

    Free planOpen sourceWebAPILinuxmacOS
    7.5Free plan
  6. 6BFE Ingress Controller logo

    BFE Ingress Controller

    Free planOpen sourceAPILinuxmacOSSelf-hosted
    7.2Free plan