Install using the manifest (server-side apply)
kubectl apply --server-side --force-conflicts -f https://github.com/ClickHouse/clickhouse-operator/releases/download/v0.0.8/clickhouse-operator.yaml
For clusters restricted to client-side apply, use the description-stripped CRDs:
kubectl apply -f https://github.com/ClickHouse/clickhouse-operator/releases/download/v0.0.8/clickhouse-operator-stripped-crds.yaml
CRDs only
kubectl apply --server-side --force-conflicts -f https://github.com/ClickHouse/clickhouse-operator/releases/download/v0.0.8/clickhouse-operator-crds.yaml
Client-side apply variant: clickhouse-operator-crds-stripped.yaml
Install using helmchart
helm install clickhouse-operator oci://ghcr.io/clickhouse/clickhouse-operator-helm \
--version=0.0.8 \
--create-namespace \
-n clickhouse-operator-system
Changelog
🚀 Features
- feat: add internal Services for interserver and operator traffic
- PR: #286
- feat: gate client traffic until replica initialization completes
- PR: #287
- feat: support in-cluster network policies generation
- PR: #214
- feat: add periodic resync, bound ClickHouse calls, fix reconcile flow
- PR: #323
- feat: add topologyMinDomains opt-in field to force AZ spreading with Karpenter/Cluster Autoscaler
- PR: #330
- feat: add spec.settings.extraReloadableConfig
- PR: #338
- feat: support startupProbe configuration
- PR: #340
- feat: concurrent reconciles and pause-reconciliation annotation
- PR: #344
🐛 Fixes
- fix: wrong defaulting of setting enableDatabaseSync to false
- PR: #275
- fix: probe job oom kill with transparent_hugepage=true
- PR: #278
- fix(helm): derive metrics Certificate dnsNames from resourceName helper
- PR: #291
- fix: skip reconcile while the cluster is being deleted
- PR: #309
- fix: Use the correct
grants.query[]form overgrants[].query- PR: #312
- fix(webhook): warn when extraUsersConfig carries server-tree sections
- PR: #317
- fix: probe job with readonly rootfs, make it default
- PR: #343
- fix(sync): recover a replica whose Keeper registration outlived its volume
- PR: #345
- fix: bound log growth with saner logger and system log table defaults
- PR: #329
🧪 Tests
- test: update ch version in tests, multiple changes for e2e stabilizat…
- PR: #277
- test: retain e2e failure diagnostics and reports
- PR: #279
- test: add e2e sharding planning step to equally distribute test spec between jobs
- PR: #280
- test: improve e2e failure diagnostics report
- PR: #299
- test: upgrade CH versions in tests, ensure e2e tests use pinned/prepulled images
- PR: #301
- test: unify e2e utils across e2e/deployment/openshift tests
- PR: #304
- test: add max CRD size check, add version probe job retries
- PR: #305
- test: enforce NetworkPolicies in e2e and deploy tests
- PR: #306
- test: add CR builders, unify suite bootstrap, gate waits on Healthy
- PR: #307
- test: verify that controllers do not change resource on a settled clusters
- PR: #310
- test: enable race detector for e2e, assert no leaked goroutines after suites
- PR: #314
- test(e2e): continuous database invariant checks
- PR: #322
📚 Docs
- docs: systemLogsTTLDays defaults on new clusters only; Keeper raft_logs_level follows logger.level
- PR: #348
🧹 Chores
- ci: bump actions/setup-go from 6 to 7 in the github-actions group
- PR: #273
- chores: bump the go-modules group with 18 updates
- PR: #274
- chores: refactor replica state
- PR: #276
- chores: bump the go-modules group with 31 updates
- PR: #282
- ci: bump docker/login-action from 4.4.0 to 4.5.2 in the github-actions group
- PR: #281
- chores: bump the go-modules group with 5 updates
- PR: #283
- ci: bump the github-actions group with 4 updates
- PR: #284
- chores: bump the go-modules group with 16 updates
- PR: #288
- ci: bump the github-actions group with 4 updates
- PR: #289
- chores: bump the go-modules group with 10 updates
- PR: #294
- ci: bump the github-actions group with 2 updates
- PR: #296
- chores: bump google.golang.org/protobuf from 1.36.12-0.20260120151049-f2248ac996af to 1.36.12
- PR: #295
- chore: add role label to operator manager pods
- PR: #298
- chores: bump the go-modules group with 24 updates
- PR: #303
- ci: bump the github-actions group with 2 updates
- PR: #302
- chores: update dependencies, tooling and test versions
- PR: #313
- chores: modernize codebase with go fix (Go 1.26/1.27 idioms)
- PR: #315
- ci: bump the github-actions group with 4 updates
- PR: #319
- chores: bump the go-modules group with 11 updates
- PR: #318
- ci: auto-regenerate manifests on dependabot bumps
- PR: #326
- chores: bump the go-modules group across 1 directory with 38 updates
- PR: #331
- ci: bump the github-actions group across 1 directory with 3 updates
- PR: #332
- chores: bump the go-modules group with 8 updates
- PR: #336
- ci: bump the github-actions group with 3 updates
- PR: #337
- chores: extract app composition root and settings from cmd/main
- PR: #342
📦 Uncategorized
- Reject non-positive version update intervals
- PR: #316