Overview
What is a Keeper?
A Keeper is the HA management layer responsible for leader election, automatic failover, and cluster coordination. Ivory uses "Keeper" as its generic term for this role — the same interface works regardless of which HA system the cluster uses. A Keeper can be a standalone agent running beside the database engine or a management system embedded directly in it. Patroni is the first supported implementation, with more planned.
The Keeper's job is to answer one question at all times: who is the leader? It does this by:
- Continuously monitoring the local database instance and reporting its health
- Competing with peer Keeper agents for the leadership lock in a shared coordination backend (such as a DCS — Distributed Configuration Store like etcd, Consul, or ZooKeeper)
- Triggering automatic failover when the current leader loses the lock or becomes unreachable
- Exposing a management API (on the keeper port, default
8008) that Ivory uses to read cluster state and issue management commands
Because every node exposes a Keeper and every Keeper knows the full cluster topology, Ivory only needs to reach any one node's keeper port to get a complete picture of the cluster.
Node Roles
Cluster Health Grid
The Overview block is the cluster-level dashboard. It shows the real-time state of every node as reported by the Keeper.
Clicking any node card opens its Node view for fine-grained per-node operations.
HA Operations
Every node card in the grid has its own action buttons. The cluster header additionally provides Pause and Resume which affect the entire cluster at once.
Per-node actions (available on each node card):
Cluster-level actions (cluster header):
The Node → Keeper tab shows all actions for a single node in a dedicated full-page view alongside the configuration editor.
Cluster Options
Click the settings icon in the top-right corner to open the cluster options panel:
- Update database credentials and Keeper API credentials
- Configure TLS for keeper and database connections
- Assign or update a vault reference for credential management
- Add, remove, or rename tags
- Override the main instance — pin operations to a specific node instead of the auto-selected leader
