Kong Ingress Controller (KIC)

Configure Kong Gateway using Kubernetes CRDs with Kong Ingress Controller

What is the Kong Ingress Controller?

Kong Ingress Controller allows you to run Kong Gateway as a Kubernetes Ingress to handle inbound requests for a Kubernetes cluster.

Kong Ingress Controller takes Kubernetes resources such as Ingress and HTTPRoute and converts them into a valid Kong Gateway configuration. It enables you to configure all the features of Kong Gateway using Kubernetes CRDs.

KIC supports all Kong Gateway entities, and can be deployed multiple times within a single cluster to provide traffic splitting.

 
flowchart TB
   A( Cluster Operator)
   B( API server)
   C( Kong Ingress Controller)

   D@{ shape: processes, label: " Kong Gateways"}

    A -->|kubectl apply| B
    C <-->|Reads configuration| B
    C -->|POST /config| D

  

Gateway API support

Kong is proud to be a driving force behind the Kubernetes Gateway API standard. With multiple contributors in maintainer and reviewer roles, Kong is all-in on Gateway API as the future of Kubernetes networking.

Kong Ingress Controller was the first submitted conformance report, and is 100% compliant with the core conformance tests, and many other additional extended tests. Kong has implemented the Gateway API resources as first-class citizens, converting them directly in to Kong Gateway configuration rather than using intermediate CRDs. This makes the Gateway API CRDs a native language for Kong Ingress Controller.

Learn more about the Gateway API →

Common use cases

Many Kong Ingress Controller users have the same questions when adding an ingress controller to their cluster:

  • How do I expose my service on a specific path?
  • How do I protect the service with rate limiting?
  • How do I cache responses for a period of time to reduce load?
  • How do I add authentication to my service?

Follow our getting started guide which takes you through all of these in under 10 minutes, step-by-step. Each page contains copy/paste instructions, and links to additional documentation if you want to learn more.

Troubleshooting

If Kong Ingress Controller is not working for you the following pages may help:

  • Troubleshooting: Common issues that people encounter when running Kong Ingress Controller.
  • FAQ: Specific questions about routing behavior, plugin compatibility and more.
  • Feature gates: If something isn’t working as expected, ensure that you have the correct feature gates enabled
  • Create a GitHub issue: Report a bug or make a feature request for Kong Ingress Controller.
  • Join the Kong Slack community: Get help from the team
Something wrong?

Help us make these docs great!

Kong Developer docs are open source. If you find these useful and want to make them better, contribute today!