Skip to content

Latest commit

 

History

History
153 lines (110 loc) · 6.77 KB

README.md

File metadata and controls

153 lines (110 loc) · 6.77 KB

Build Status Go Reference Codecov License Twitter

Kong Ingress Controller for Kubernetes (KIC)

Use Kong for Kubernetes Ingress. Configure plugins, health checking, load balancing, and more in Kong for Kubernetes Services, all using Custom Resource Definitions (CRDs) and Kubernetes-native tooling.

Features | Get started | Documentation | main branch builds | Seeking help

Features

  • Ingress routing Use Ingress resources to configure Kong.
  • Enhanced API management using plugins Use a wide array of plugins to monitor, transform and protect your traffic.
  • Native gRPC support Proxy gRPC traffic and gain visibility into it using Kong's plugins.
  • Health checking and Load-balancing Load balance requests across your pods and supports active & passive health-checks.
  • Request/response transformations Use plugins to modify your requests/responses on the fly.
  • Authentication Protect your services using authentication methods of your choice.
  • Declarative configuration for Kong Configure all of Kong using CRDs in Kubernetes and manage Kong declaratively.
  • Gateway Discovery Monitors your Kong Gateways and pushes configuration to all replicas.

Get started

You can use Minikube or Kind on your local machine or use a hosted Kubernetes service like GKE.

Setting up Kong for Kubernetes is as simple as:

# using YAMLs
$ kubectl apply -f https://bit.ly/k4k8s

# or using Helm
$ helm repo add kong https://charts.konghq.com
$ helm repo update

# Helm 3
$ helm install kong/kong --generate-name --set ingressController.installCRDs=false

Once installed, please follow the Getting Started guide to start using Ingress in your Kubernetes cluster.

Note: Kong Enterprise users, please follow along with our enterprise guide to setup the enterprise version.

Container images

Release images

Release builds of Kong Ingress Controller can be found on Docker Hub in kong/kubernetes-ingress-controller repository.

At the moment we're providing images for:

  • Linux amd64
  • Linux arm64

main branch builds

Nightly pre-release builds of the main branch are available from the kong/nightly-ingress-controller repository hosted on Docker Hub:

main contains unreleased new features for upcoming minor and major releases:

docker pull kong/nightly-ingress-controller:nightly

Documentation

All documentation for the Kong Ingress Controller is present in the kong/docs.konghq.com repository. Pull Requests are welcome for additions and corrections.

Guides and Tutorials

Please browse through the guides to get started and to learn specific ingress controller operations.

Contributing

We ❤️ pull requests and we’re continually working hard to make it as easy as possible for developers to contribute. Before beginning development with the Kong Ingress Controller, please familiarize yourself with the following developer resources:

Seeking help

Please search through the FAQs, posts on the discussions page or the Kong Nation Forums as it's likely that another user has run into the same problem. If you don't find an answer, please feel free to post a question.

If you've found a bug, please open an issue.

For a feature request, please open an issue using the feature request template.

You can also talk to the developers behind Kong in the #kong channel on the Kubernetes Slack server.

Community meetings

You can join monthly meetups hosted by Kong to ask questions, provide feedback, or just to listen and hang out. See the Online Meetups Page to sign up and receive meeting invites and Zoom links.

Preview and Experimental Features

At any time the KIC may include features or options that are considered experimental and are not enabled by default, nor available in the Kong Documentation Site.

To try out new features that are behind feature gates, please see the preview features in FEATURE_GATES.md and documentation for these preview features can be found in FEATURE_PREVIEW_DOCUMENTATION.md.