Gateway
This guide describes how to deploy a Zilla Console Gateway on a self-managed Kubernetes cluster.
This page assumes that the Zilla Console Control & Management plane has already been deployed and initialized.
Prerequisites
- Zilla Console deployed
- Zilla Console bootstrap token
- Kubernetes cluster (
v1.25+) kubectlandhelminstalled
Create the Environment Namespace
Create a dedicated Kubernetes namespace for the environment:
kubectl create namespace <ENVIRONMENT_NAME>Configure Environment Values
The chart exposes a LoadBalancer service for the gateway, which by default publishes port 443 (https) and port 9094 (kafka). Override product.tcp.ports to publish a different set:
product:
tcp:
ports:
- name: kafka
port: 9092Reference a TLS keystore secret with tls.secretName when the gateway must present a server certificate to clients. See the EKS gateway guide for how the keystore is built and why its alias matters.
Deploy the Gateway
Deploy the gateway using the environment Helm chart:
helm install <ENVIRONMENT_NAME> oci://ghcr.io/aklivity/charts/zilla-platform-environment \
--version ${CHART_VERSION} \
-n <ENVIRONMENT_NAME> \
-f environment-values.yaml \
--set bootstrapToken="${BOOTSTRAP_TOKEN}" \
--set platformURI="https://platform.${DOMAIN}" \
--set licenseKey="${ZILLA_PLATFORM_LICENSE_KEY}"licenseKey, platformURI, and a bootstrap token are all required. To keep the token out of your shell history, put it in a secret and set bootstrapTokenSecret.name (with bootstrapTokenSecret.key, default token) instead of bootstrapToken.
Verify Deployment
kubectl get pods -n <ENVIRONMENT_NAME>
kubectl get svc -n <ENVIRONMENT_NAME>
