local-path provisioner has no CSI snapshot support, and in ingress, because K3s ships Traefik instead of ingress-nginx. If Rancher manages your cluster, also read Rancher for kubeconfig and project placement.
Prerequisites
- Linux hosts supported by K3s, running K3s 1.28 or later.
kubectl,helm, andbase64on the machine that runs the installer.- Root or
sudoon the K3s hosts, to install K3s and read its kubeconfig (/etc/rancher/k3s/k3s.yaml, readable only by root). - 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).
A single-node cluster is below the supported minimum of 3 worker nodes. Use it to evaluate FalkorDB Enterprise, not to run production data.
How K3s differs
1
Install K3s
Install the K3s server. Set For a multi-node cluster, read the join token on the server, then run the agent install on each worker:See the K3s high-availability docs for a three-server control plane.
--tls-san to the IP address or hostname you will use to reach the API server from other machines, so its certificate is valid for that address:2
Get cluster credentials
K3s writes a cluster-admin kubeconfig to Verify access:You should see
/etc/rancher/k3s/k3s.yaml, readable only by root. Copy it to the machine that runs the installer and replace 127.0.0.1 in its server field with the server’s address:local-path (default) and traefik.3
Set up storage
FalkorDB Enterprise uses persistent volumes for databases and the Admin Server, and CSI volume snapshots for backups.Single node. Skip this step. When the default StorageClass is Make The installer runs a snapshot controller in the KubeBlocks namespace, installs the
local-path on a one-node cluster, the installer enables a bundled hostpath CSI driver, makes its csi-hostpath-sc the default StorageClass, and raises the release namespace’s Pod Security level to privileged because the driver needs it. All volumes stay on that node.Multi-node. Install Longhorn. Each node needs an iSCSI initiator (open-iscsi on Debian/Ubuntu, iscsi-initiator-utils on RHEL), and nfs-common or nfs-utils for RWX volumes. Check the Longhorn installation requirements, then:longhorn the only default StorageClass:VolumeSnapshot CRDs when they are missing, and creates a default VolumeSnapshotClass for Longhorn with type: snap, so backups take in-cluster Longhorn snapshots.If a default
VolumeSnapshotClass for driver.longhorn.io already exists, the installer uses it instead. Make sure it sets parameters.type: snap. Without a type, Longhorn takes a Longhorn backup, which fails unless you have configured a Longhorn backup target.4
Install FalkorDB Enterprise
For an evaluation, run the installer with default settings:The installer prints the Create the TLS Secret that the Ingress references, from a certificate for Then install:Point DNS for
kubectl port-forward command for the Admin UI. Add --quick-access to publish it over plain HTTP through Traefik instead; it is then reachable on any node’s IP. See Quickstart for defaults and validation.For production, start from the values in Production install and add the K3s-specific settings below:admin.example.com. Without it, Traefik serves its self-signed default certificate.admin.example.com at one or more node IPs, or at an external load balancer in front of the nodes.5
Validate the install
kubectl get volumesnapshotclass should list falkordb-enterprise-driver-longhorn-io as the default on a multi-node cluster, or falkordb-enterprise-csi-hostpath on a single node. An evaluation install without --quick-access creates no Ingress, so kubectl get ingress returns nothing.Sign in with the bootstrap admin user. On a first install the chart generates its password:Pod security
K3s does not enforce a cluster-wide Pod Security Admission level unless you pass it an admission config, as in the K3s CIS hardening guide. The installer labels its own namespaceenforce=baseline, or privileged when it enables the bundled hostpath CSI driver. If your cluster enforces restricted by default, label kb-system and each database namespace yourself. Longhorn also needs privileged in longhorn-system:
Troubleshooting
For anything else, see Troubleshoot deployments.
Clean up
Remove FalkorDB Enterprise first (see Uninstall). To remove K3s itself, run/usr/local/bin/k3s-uninstall.sh on servers and /usr/local/bin/k3s-agent-uninstall.sh on agents. This deletes all cluster data, including local-path volumes.