Install on Kubernetes
This page also includes the equivalent commands for OpenShift.
In DB-less mode on Kubernetes, the config is stored in etcd, the Kubernetes native data store. For more information, see Kubernetes Deployment Options.
The Kong Gateway software is governed by the . Kong Gateway (OSS) is licensed under an Apache 2.0 license.
- A Kubernetes cluster, v1.19 or later
- v1.19 or later
- (Enterprise only) A
license.json
file from Kong
Create the namespace for Kong Gateway with Kubernetes Ingress Controller. For example:
Kubernetes
OpenShift
Save your license file temporarily with the filename
license
(no file extension).Run:
Kubernetes
kubectl create secret generic kong-enterprise-license --from-file=<absolute-path-to>/license -n kong
oc create secret generic kong-enterprise-license --from-file=./license -n kong
Run one of the following:
Kubernetes
Kubernetes (OSS)
OpenShift
kubectl apply -f https://bit.ly/k4k8s-enterprise-install
oc create -f https://bit.ly/k4k8s-enterprise-install
This might take a few minutes.
Check the install status:
Kubernetes
OpenShift
oc get pods -n kong
To make HTTP requests, you need the IP address of the load balancer. Get the
loadBalancer
address and store it in a localPROXY_IP
environment variable:export PROXY_IP=$(kubectl get -o jsonpath="{.status.loadBalancer.ingress[0].ip}" service -n kong kong-proxy)
If you’re testing locally and have not deployed a loadbalancer, you can port forward the
kong-proxy
service to test:Then in a different terminal window:
Verify that the value of
$PROXY_IP
matches the value of the external host:echo $PROXY_IP
This should match the
EXTERNAL_IP
value of thekong-proxy
service returned by the Kubernetes API:Kubernetes
OpenShift
kubectl get service kong-proxy -n kong
oc get service kong-proxy -n kong
See the Kong Ingress Controller docs for how-to guides, reference guides, and more.