title_wip

### ClickHouseClusterStatus[​](#clickhouseclusterstatus "Direct link to ClickHouseClusterStatus")

ClickHouseClusterStatus defines the observed state of a ClickHouse cluster.

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Field Type Description|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `conditions` `[]metav1.Condition` Current conditions of the cluster.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `observedGeneration` `int64` Most recently observed generation.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `replicas` `int32` Number of replicas currently running.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `readyReplicas` `int32` Number of ready replicas.|  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `configurationRevision` `string` Target configuration revision applied by the operator.|  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `statefulSetRevision` `string` Target StatefulSet controller revision.|  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | | `currentRevision` `string` Last applied cluster spec revision.|  |  |  | | --- | --- | --- | | `updateRevision` `string` Last requested cluster spec revision. | | | | | | | | | | | | | | | | | | | | | | | | | | |

## KeeperCluster[​](#keepercluster "Direct link to KeeperCluster")

KeeperCluster is the schema for the ClickHouse Keeper cluster API.

### API Version and Kind[​](#keeper-api-version-and-kind "Direct link to API Version and Kind")

```
apiVersion: clickhouse.com/v1alpha1
kind: KeeperCluster
```

### KeeperClusterSpec[​](#keeperclusterspec "Direct link to KeeperClusterSpec")

KeeperClusterSpec defines the desired state of a Keeper cluster.

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Field Type Required Default Description|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `replicas` `*int32` No `3` Number of replicas. Must be an odd number: 0, 1, 3, 5, 7, 9, 11, 13, or 15.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `podTemplate` `PodTemplateSpec` No - Parameters for the pod spec.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `containerTemplate` `ContainerTemplateSpec` No See defaults Parameters for the Keeper container spec.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `dataVolumeClaimSpec` `PersistentVolumeClaimSpec` Yes - Storage configuration for data volumes.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `labels` `map[string]string` No - Additional labels added to all resources.|  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `annotations` `map[string]string` No - Additional annotations added to all resources.|  |  |  |  |  | | --- | --- | --- | --- | --- | | `settings` `KeeperConfig` No - Keeper configuration parameters. | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

#### Example[​](#example-1 "Direct link to Example")

```
apiVersion: clickhouse.com/v1alpha1
kind: KeeperCluster
metadata:
  name: example-keeper
spec:
  replicas: 3
  dataVolumeClaimSpec:
    storageClassName: fast-ssd
    accessModes:
      - ReadWriteOnce
    resources:
      requests:
        storage: 10Gi
  containerTemplate:
    resources:
      requests:
        cpu: "500m"
        memory: "512Mi"
      limits:
        cpu: "1"
        memory: "1Gi"
  podTemplate:
    topologyZoneKey: topology.kubernetes.io/zone
  settings:
    tls:
      enabled: true
      required: true
      serverCertSecret:
        name: keeper-cert
```

### KeeperConfig[​](#keeperconfig "Direct link to KeeperConfig")

Keeper configuration parameters.

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Field Type Required Default Description|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `logger` `LoggerConfig` No See defaults Logger configuration.|  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | `tls` `ClusterTLSSpec` No - TLS settings for Keeper.|  |  |  |  |  | | --- | --- | --- | --- | --- | | `extraConfig` `runtime.RawExtension` No - Additional Keeper configuration (merged with defaults). | | | | | | | | | | | | | | | | | | | |

### KeeperClusterStatus[​](#keeperclusterstatus "Direct link to KeeperClusterStatus")

KeeperClusterStatus defines the observed state of a Keeper cluster.