- The Admin Dashboard (UI + API) and FalkorDB Browser are served through an internal Azure Load Balancer — reachable only from inside the VNet (or peered VNets / VPN / ExpressRoute).
- TLS certificates are managed in Azure Key Vault and synced/rotated automatically by the AKS application routing add-on.
- Hostnames resolve through an Azure Private DNS zone linked to the cluster VNet.
Architecture
Two hostnames are used, both pointing at the same internal IP:Prerequisites
- An AKS cluster (any supported version) and
azCLI logged in with permissions to:- manage the cluster (
az aks ...), - create Key Vaults and role assignments,
- create Private DNS zones in the target resource group.
- manage the cluster (
kubectland cluster credentials (access to runkubectlcommands in the cluster’s context):az aks get-credentials -g <rg> -n <cluster>.- FalkorDB registry credentials (provided by FalkorDB support).
- At least 3 worker nodes with 4 CPU and 16 GB of memory each.
- Outbound access from the cluster to pull images:
registry.falkordb.cloud(Enterprise images, credentials required),docker.io,apecloud-registry.cn-zhangjiakou.cr.aliyuncs.com,registry.k8s.io, andghcr.io— orregistry.falkordb.cloudalone, since every image is also mirrored there (see Private registries). - The install script (referenced by URL below).
Note on snapshots: AKS managed CSI drivers ship their own snapshot controller, so the install uses --skip-snapshot-controller.
0. Set variables
1. Key Vault and TLS certificate
Create an RBAC-enabled Key Vault and a self-issued certificate covering both hostnames. Azure auto-renews it 30 days before expiry, and the app routing add-on picks up renewals automatically.
The add-on’s Key Vault integration grants access via RBAC role assignments, so the vault must be created with --enable-rbac-authorization true. Access-policy vaults will not work.
Certificate trust: a Self-issued certificate is not trusted by browsers out of the box. For internal domains this is usually acceptable (users accept the warning once), or distribute the cert to client trust stores. To avoid warnings entirely, import a certificate from your internal CA into the Key Vault instead — everything else in this guide stays the same.
2. Application routing add-on with an internal ingress controller
Enable the add-on with Key Vault integration, then create a second NGINX ingress controller that provisions an internal load balancer. (The add-on’s default controller,webapprouting.kubernetes.azure.com, is always public — do not use it for internal-only deployments.)
3. Install FalkorDB Enterprise
The install script creates the namespace, registry pull secret, KubeBlocks, and the Helm release. Only values that differ from chart defaults are set on the command line.The chart is pulled fromoci://registry.falkordb.cloud. The script logs your local Helm client in to the registry automatically using--registry-username/--registry-password. If you hit anunauthorizederror fetching the chart (older script versions), log in manually first:helm registry login registry.falkordb.cloud -u "$REGISTRY_USERNAME" -p "$REGISTRY_PASSWORD".
- TLS secret names follow the add-on convention
keyvault-<ingress-name>. With the default release name the ingresses arefalkordb-enterprise-gatewayandfalkordb-enterprise-falkordb-browser. If you use--release-name, adjust bothtls[0].secretNamevalues accordingly. - Same-origin routing: the gateway ingress serves the UI at
/and the API at/apion the dashboard host, so the UI reaches the API with relative URLs — no separate API hostname is needed. falkordb-browser.env.nextauthUrlmust be the public Browser URL, otherwise Browser auth redirects break.adminUi.env.viteBrowserUrlpoints the dashboard’s “open in Browser” links at the Browser hostname.
4. Private DNS
Create the private zone, link it to the cluster VNet, and add A records for both hostnames pointing at the internal ingress IP.Resolution scope: the private zone only resolves from linked VNets. Clients on VPN/ExpressRoute need their DNS to forward the zone to Azure DNS (168.63.129.16), e.g. via an Azure DNS Private Resolver. Link additional (peered) VNets with moreaz network private-dns link vnet createcommands.
5. Verify
/etc/hosts:
https://falkordb-admin.example.internal (accept the self-signed certificate warning). Remove the hosts entry when done.
6. First login
- Open
https://$DASHBOARD_HOSTNAMEand sign in with$ADMIN_EMAIL/ the temporary password. - You will be forced to change the password (
mustChangePassword=true). - Activate your Enterprise license in the dashboard.