Skip to main content
FalkorDB Enterprise stores all of its state in Kubernetes. The Admin Server is a thin layer over a set of KubeBlocks custom resources, so anything the console creates can also be inspected, templated into GitOps, or edited with kubectl.
Prefer the Admin UI, the CLI, or the Admin Server API. They validate input, enforce role permissions, and write an audit entry. Edit these resources directly only when you need GitOps or are debugging.

Resource inventory

Cluster

One Cluster represents one FalkorDB deployment.
componentDef names are pinned to the installed FalkorDB addon, not to the FalkorDB version. List the values available on your cluster with kubectl get componentdefinitions | grep falkordb.

Topologies

Example: replicated with Sentinel

Example: sharded

OpsRequest

Day-2 changes are not applied by patching the Cluster. The Admin Server creates an OpsRequest, and KubeBlocks reconciles it. Every request needs spec.clusterName and spec.type.
KubeBlocks rejects a HorizontalScaling entry that sets shards together with scaleOut or scaleIn. Change the shard count and the per-shard replica count in two separate requests.

Backup and restore

Backup creates a point-in-time copy. The default policy for a deployment is named {deployment}-falkordb-backup-policy.
BackupSchedule turns a policy into recurring backups. Cron expressions are evaluated in UTC.
Restore writes a backup back into an existing deployment. Set spec.restoreTime for a point-in-time restore.
To seed a new deployment from a backup, annotate the Cluster instead of creating a Restore:
See Restore to the same deployment and Restore to a new deployment.

Status phases

A Cluster also reports per-component state under status.components.{name}.phase and .upToDate, and an OpsRequest reports status.progress as a percentage.

Labels and annotations

Quote label selectors that contain * or [ in zsh, or the shell expands them before kubectl sees them.