Clustering & Raft
Standalone, single-node Raft and distributed Jackals across regions.
A cluster is optional. Choose the deployment mode that matches your needs.
Three deployment modes
| Mode | Behavior | Typical use |
|---|---|---|
| Standalone | One process with embedded storage; no Raft cluster | Development and simple self-hosting |
| Single-node Raft | A node uses Raft and elects itself | Replicated-state foundation without remote peers |
| Multi-node cluster | Jackals use Raft consensus and region-aware probes | Multiple nodes and regions |
The Pharaoh is the Raft leader. Jackals participate in the monitoring and control plane; their cluster is the Necropolis.
Standalone
anubis serveNo cluster configuration is required.
Single-node Raft
anubis serve --clusterConfiguration also supports necropolis.single_node. Review cluster configuration for the available settings.
Bootstrap a cluster
Set a shared cluster secret on the nodes that join your cluster:
export ANUBIS_CLUSTER_SECRET="replace-with-a-strong-shared-secret"
anubis serve --cluster --bootstrap \
--node-name jackal-01 \
--region eu-west \
--bind 0.0.0.0:7946Keep the secret private and provide it through your deployment's secret mechanism.
Join a Jackal
On another node, set the matching secret and use a reachable existing node:
export ANUBIS_CLUSTER_SECRET="replace-with-the-same-shared-secret"
anubis serve --cluster \
--join jackal-01:7946 \
--node-name jackal-02 \
--region us-eastNames and regions above are examples. Nodes need network reachability between their configured cluster addresses.
Inspect the Necropolis
anubis necropolis
anubis statusUse the dashboard's Cluster view for topology and node state. Continue with deployment and the production runbook for rollout and operational checks.