Available in: EE
The module lifecycle stage: Preview
The module has requirements for installation
The managed-clickhouse module is intended for platform administrators and application teams
who need to run ClickHouse in a Deckhouse Kubernetes Platform (DKP) cluster.
It deploys and maintains ClickHouse instances from declarative manifests
without manual pod configuration.
The module uses the Clickhouse and ClickhouseClass custom resources.
Administrators define validation rules and resource limits in ClickhouseClass,
and users create Clickhouse resources in their namespaces.
The operator reconciles the desired state, validates configuration,
and exposes a Kubernetes service for client connections.
For setup steps and operational details, see the user guide and administrator guide.
Main Features
- Deploy a ClickHouse instance from a
Clickhousemanifest in a user namespace. - Validate instance configuration against
ClickhouseClasssizing policies and CEL rules before deployment. - Track deployment progress with status conditions on the
Clickhouseresource. - Connect to ClickHouse through the
d8ms-ch-<instance-name>service created in the instance namespace. - Configure server TLS with cert-manager or custom Kubernetes Secrets.
- Restrict allowed CPU, memory, and storage combinations with
ClickhouseClasssizing policies. - Pin pod scheduling with
nodeSelector,nodeAffinity, andtolerationsdefined inClickhouseClass.
Limitations
- The module supports only ClickHouse version
26.3.12.3-lts. - Each
Clickhouseresource deploys a standalone instance; multi-shard cluster topology is not configured through the module API. - The
storageClassNameparameter inspec.instance.persistentVolumeClaimcannot be changed after the instance is created. - The
ClickhouseClassresource is immutable; create a new class to change its specification. - Built-in observability integration for ClickHouse instances is not available in the current module version.