Company or project name
No response
Use case
We want to deploy a ClickHouseCluster using an existing, externally managed
ClickHouse Keeper installation.
Currently, ClickHouseClusterSpec requires keeperClusterRef, which refers to a
KeeperCluster Kubernetes resource managed by the operator. This couples the
ClickHouse deployment to an operator-managed Keeper installation.
Keeper may be managed independently, for example:
- by a separate Kubernetes operator;
- in another Kubernetes cluster;
- using VMs or bare-metal servers;
- as a shared coordination service;
- through another infrastructure-management system.
The ClickHouse Operator should manage the ClickHouse resources without assuming
ownership of the Keeper lifecycle.
Describe the solution you'd like
Allow ClickHouseCluster to use either:
- an operator-managed Keeper cluster through the existing
keeperClusterRef; or
- a list of externally managed Keeper endpoints.
For example, the API could conceptually support:
apiVersion: clickhouse.com/v1alpha1
kind: ClickHouseCluster
metadata:
name: example
spec:
replicas: 3
shards: 1
externalKeeper:
nodes:
- host: keeper-1.example.internal
port: 9181
- host: keeper-2.example.internal
port: 9181
- host: keeper-3.example.internal
port: 9181
Company or project name
No response
Use case
We want to deploy a
ClickHouseClusterusing an existing, externally managedClickHouse Keeper installation.
Currently,
ClickHouseClusterSpecrequireskeeperClusterRef, which refers to aKeeperClusterKubernetes resource managed by the operator. This couples theClickHouse deployment to an operator-managed Keeper installation.
Keeper may be managed independently, for example:
The ClickHouse Operator should manage the ClickHouse resources without assuming
ownership of the Keeper lifecycle.
Describe the solution you'd like
Allow
ClickHouseClusterto use either:keeperClusterRef; orFor example, the API could conceptually support: