diff --git a/packages/apps/clickhouse/Chart.yaml b/packages/apps/clickhouse/Chart.yaml
index b86fc70f..92cc01e1 100644
--- a/packages/apps/clickhouse/Chart.yaml
+++ b/packages/apps/clickhouse/Chart.yaml
@@ -16,7 +16,7 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 0.5.0
+version: 0.6.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
diff --git a/packages/apps/clickhouse/README.md b/packages/apps/clickhouse/README.md
index 456371c9..1bec6bd4 100644
--- a/packages/apps/clickhouse/README.md
+++ b/packages/apps/clickhouse/README.md
@@ -19,12 +19,14 @@ more details:
### Common parameters
-| Name | Description | Value |
-| -------------- | ----------------------------------- | ------ |
-| `size` | Persistent Volume size | `10Gi` |
-| `shards` | Number of Clickhouse replicas | `1` |
-| `replicas` | Number of Clickhouse shards | `2` |
-| `storageClass` | StorageClass used to store the data | `""` |
+| Name | Description | Value |
+| ---------------- | ----------------------------------- | ------ |
+| `size` | Persistent Volume size | `10Gi` |
+| `logStorageSize` | Persistent Volume for logs size | `2Gi` |
+| `shards` | Number of Clickhouse replicas | `1` |
+| `replicas` | Number of Clickhouse shards | `2` |
+| `storageClass` | StorageClass used to store the data | `""` |
+| `logTTL` | for query_log and query_thread_log | `15` |
### Configuration parameters
diff --git a/packages/apps/clickhouse/templates/clickhouse.yaml b/packages/apps/clickhouse/templates/clickhouse.yaml
index 211d645a..be06e3a8 100644
--- a/packages/apps/clickhouse/templates/clickhouse.yaml
+++ b/packages/apps/clickhouse/templates/clickhouse.yaml
@@ -32,11 +32,12 @@ kind: "ClickHouseInstallation"
metadata:
name: "{{ .Release.Name }}"
spec:
- {{- with .Values.size }}
+ namespaceDomainPattern: "%s.svc.cozy.local"
defaults:
templates:
dataVolumeClaimTemplate: data-volume-template
- {{- end }}
+ podTemplate: clickhouse-per-host
+ serviceTemplate: svc-template
configuration:
{{- with $users }}
users:
@@ -46,6 +47,41 @@ spec:
{{ $name }}/networks/ip: ["::/0"]
{{- end }}
{{- end }}
+ files:
+ config.d/z_log_disable.xml: |
+
+
+
+
+
+
+
+
+
+
+
+
+ config.d/query_log_ttl.xml: |
+
+
+ system
+
+ ENGINE = MergeTree PARTITION BY (event_date)
+ ORDER BY (event_time)
+ TTL event_date + INTERVAL {{ .Values.logTTL }} DAY DELETE
+
+ 7500
+
+
+ system
+
+ ENGINE = MergeTree PARTITION BY (event_date)
+ ORDER BY (event_time)
+ TTL event_date + INTERVAL {{ .Values.logTTL }} DAY DELETE
+
+ 7500
+
+
profiles:
readonly/readonly: "1"
clusters:
@@ -53,17 +89,48 @@ spec:
layout:
shardsCount: {{ .Values.shards }}
replicasCount: {{ .Values.replicas }}
- {{- with .Values.size }}
templates:
volumeClaimTemplates:
- name: data-volume-template
spec:
accessModes:
- ReadWriteOnce
- {{- with $.Values.storageClass }}
- storageClassName: {{ . }}
- {{- end }}
resources:
requests:
- storage: {{ . }}
- {{- end }}
+ storage: {{ .Values.size }}
+ - name: log-volume-template
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: {{ .Values.logStorageSize }}
+ podTemplates:
+ - name: clickhouse-per-host
+ spec:
+ affinity:
+ podAntiAffinity:
+ requiredDuringSchedulingIgnoredDuringExecution:
+ - labelSelector:
+ matchExpressions:
+ - key: "clickhouse.altinity.com/chi"
+ operator: In
+ values:
+ - "{{ .Release.Name }}"
+ topologyKey: "kubernetes.io/hostname"
+ containers:
+ - name: clickhouse
+ volumeMounts:
+ - name: data-volume-template
+ mountPath: /var/lib/clickhouse
+ - name: log-volume-template
+ mountPath: /var/log/clickhouse-server
+ serviceTemplates:
+ - name: svc-template
+ generateName: chendpoint-{chi}
+ spec:
+ ports:
+ - name: http
+ port: 8123
+ - name: tcp
+ port: 9000
diff --git a/packages/apps/clickhouse/values.schema.json b/packages/apps/clickhouse/values.schema.json
index 8a1abab4..502d96b6 100644
--- a/packages/apps/clickhouse/values.schema.json
+++ b/packages/apps/clickhouse/values.schema.json
@@ -7,6 +7,11 @@
"description": "Persistent Volume size",
"default": "10Gi"
},
+ "logStorageSize": {
+ "type": "string",
+ "description": "Persistent Volume for logs size",
+ "default": "2Gi"
+ },
"shards": {
"type": "number",
"description": "Number of Clickhouse replicas",
@@ -22,6 +27,11 @@
"description": "StorageClass used to store the data",
"default": ""
},
+ "logTTL": {
+ "type": "number",
+ "description": "for query_log and query_thread_log",
+ "default": 15
+ },
"backup": {
"type": "object",
"properties": {
diff --git a/packages/apps/clickhouse/values.yaml b/packages/apps/clickhouse/values.yaml
index 8b230e04..18362761 100644
--- a/packages/apps/clickhouse/values.yaml
+++ b/packages/apps/clickhouse/values.yaml
@@ -1,14 +1,18 @@
## @section Common parameters
## @param size Persistent Volume size
+## @param logStorageSize Persistent Volume for logs size
## @param shards Number of Clickhouse replicas
## @param replicas Number of Clickhouse shards
## @param storageClass StorageClass used to store the data
+## @param logTTL for query_log and query_thread_log
##
size: 10Gi
+logStorageSize: 2Gi
shards: 1
replicas: 2
storageClass: ""
+logTTL: 15
## @section Configuration parameters
diff --git a/packages/apps/versions_map b/packages/apps/versions_map
index bb341c42..2ee27227 100644
--- a/packages/apps/versions_map
+++ b/packages/apps/versions_map
@@ -4,7 +4,8 @@ clickhouse 0.2.0 7cd7de73
clickhouse 0.2.1 5ca8823
clickhouse 0.3.0 b00621e
clickhouse 0.4.0 320fc32
-clickhouse 0.5.0 HEAD
+clickhouse 0.5.0 2a4768a5
+clickhouse 0.6.0 HEAD
ferretdb 0.1.0 4ffa8615
ferretdb 0.1.1 5ca8823
ferretdb 0.2.0 adaf603
diff --git a/packages/system/clickhouse-operator/values.yaml b/packages/system/clickhouse-operator/values.yaml
index c37869b8..287874fc 100644
--- a/packages/system/clickhouse-operator/values.yaml
+++ b/packages/system/clickhouse-operator/values.yaml
@@ -4,3 +4,7 @@ altinity-clickhouse-operator:
config.yaml:
watch:
namespaces: [".*"]
+ clickhouse:
+ configuration:
+ network:
+ hostRegexpTemplate: "(chi-{chi}-[^.]+\\d+-\\d+|clickhouse\\-{chi})\\.{namespace}\\.svc\\.cozy\\.local$"