You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(coroot): run ClickHouse + keeper (and HA-capable components) with redundancy (#2124)
Coroot's own risk view flagged every stack component as "single instance /
all instances on one node", so one node loss took down (or risked data loss
in) the telemetry store. Make the components the operator can run redundantly
actually redundant, and document why the rest stay single-instance.
ClickHouse: replicas 1 -> 2 (mirrored within the single shard via
ReplicatedMergeTree, survives losing either replica's node). Keeper: replicas
1 -> 3 (Raft quorum must be ODD; 2 is invalid, 3 tolerates one keeper down).
Both get hard pod anti-affinity on kubernetes.io/hostname so the redundancy is
real (operator exposes affinity, not topologySpreadConstraints; all nodes are
in one Hetzner zone so hostname is the spread key).
Left single-instance, with rationale in-file: bundled Prometheus and
cluster-agent (the CRD exposes no replicas field for either), and the Coroot
server StatefulSet (spec.replicas exists but the CRD requires spec.postgres
when >1; the default SQLite store can't back multiple replicas — a CNPG-backed
follow-up).
All fields verified against the live coroot.com/v1 CRD (kubectl explain +
server-side dry-run); no invented keys.
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
0 commit comments