Estimated reading time:
This is the documentation for the Kong Enterprise 2.1.x beta.
To see the documentation for the latest stable version of Kong Enterprise, go to 1.5.x.
Kong Enterprise on Kubernetes is recommended for deployments that require features not supported by Kong for Kubernetes Enterprise. It supports all Kong Enterprise plugins and features, but can’t run in DB-less mode.
Note: See Kong for Kubernetes deployment options for a feature breakdown and image comparison.
You can use kubectl or OpenShift oc to configure Kong Enterprise on Kubernetes, then deploy it using Helm.
The following instructions assume that you are deploying Kong Enterprise in classic embedded mode.
If you would like to run Kong Enterprise in Hybrid mode, the instructions in this topic will walk you though setting up a Control Plane instance. Afterward, you will need to bring up additional Kong instances for the Data Planes, and perform further configuration steps. See Hybrid Mode setup documentation for details.
Before starting installation, be sure you have the following:
- Kubernetes cluster with load balancer: Kong is compatible with all distributions of Kubernetes. You can use a Minikube, GKE, or OpenShift cluster.
- kubectl or oc access: You should have
oc (if working with OpenShift) installed and configured to communicate to your Kubernetes cluster.
- A valid Kong Enterprise License:
- Kong Enterprise Docker registry access on Bintray.
- Helm installed.
Step 1. Provision a namespace
To create the secrets for license and Docker registry access,
first provision the
Step 2. Set Up Kong Enterprise license
Running Kong Enterprise on Kubernetes requires a valid license.
As part of the sign-up process for Kong Enterprise, you should have received a license file. If you do not have one, contact your Kong sales representative. Save the license file temporarily to disk with filename
license (no file extension) and execute the following:
- There is no
.json extension in the
-n kong specifies the namespace in which you are deploying Kong for Kubernetes Enterprise. If you are deploying in a different namespace, change this value.
Step 3. Set up Helm
- Add the Kong charts repository:
$ helm repo add kong https://charts.konghq.com
- Update Helm:
Step 4. Configure Kong Enterprise Docker registry access
Set up Docker credentials to allow Kubernetes nodes to pull down the Kong Enterprise Docker image, which is hosted in a private repository. You receive credentials for the Kong Enterprise Docker image when you sign up for Kong Enterprise.
Step 5. Seed the Super Admin password
Step 6. Prepare the sessions plugin for Kong Manager and Dev Portal
In the following steps, replace
<your-password> with a secure password.
Step 7. Prepare Kong’s configuration file
values.yaml file based on the sample in the Kong charts repository. This file sets all the necessary parameters for your Kong environment.
Minimally, for setting up Kong Enterprise on Kubernetes, you will need to set the following parameters:
|Name of secret that holds the super admin password. In the example above, this is set to
|The type of secret key used for authentication. If you followed the default settings in the example above, this is
|The Docker repository. In this case,
|The Docker image tag you want to pull down, e.g.
true if you want to use the Kong Ingress Controller, or
false if you don’t want to install it.
Kong Enterprise section, enable Kong Manager (
manager) and Kong Dev Portal (
Fill in the rest of the parameters as appropriate for your implementation. Use the comments in the sample file to guide you, and see the documentation on Kong Enterprise parameters for more details.
Step 8. Deploy Kong Enterprise on Kubernetes
The steps in this section show you how to install Kong Enterprise on Kubernetes using Helm.
Note: the following instructions assume that you’re running Helm 3.
Step 9. Finalize Configuration and Verify Installation
See Using Kong for Kubernetes Enterprise for information about concepts, how-to guides, reference guides, and using plugins.