1. Verify Helm Installatino
$ helm version
version.BuildInfo{
Version:"v3.8.2",
GitCommit:"6e3701edea09e5d55a8ca2aae03a68917630e91b",
GitTreeState:"clean",
GoVersion:"go1.17.5"
}
2. Configure Kong Helm Chart
Donwload the Kong Helm chart and modify the values.yaml:
databaseConfig:
type: "postgresql"
host: "postgres-service.default.svc.cluster.local"
credentials:
password: "securepassword123"
username: "kongadmin"
service:
admin:
enabled: true
type: LoadBalancer
http:
enabled: true
port: 8001
tls:
enabled: true
port: 8444
parameters: ["http2"]
3. Deploy PostgreSQL
kubectl create deployment postgres \
--image=postgres:13-alpine \
--env="POSTGRES_USER=kongadmin" \
--env="POSTGRES_PASSWORD=securepassword123" \
--env="POSTGRES_DB=kongdb"
4. Initialize Data base Schema
kubectl run kong-migrations \
--image=kong:2.8-alpine \
--env="KONG_DATABASE=postgres" \
--env="KONG_PG_HOST=postgres-service" \
--env="KONG_PG_PASSWORD=securepassword123" \
--command -- kong migrations bootstrap
5. Set Up Konga Admin UI
kubectl create deployment konga \
--image=pantsel/konga:latest \
--env="DB_ADAPTER=postgres" \
--env="DB_HOST=postgres-service" \
--env="DB_USER=kongadmin" \
--env="DB_PASSWORD=securepassword123" \
--env="NODE_ENV=production"