1+ {{- if .Values.enabled }}
2+ apiVersion : apps/v1
3+ kind : Deployment
4+ metadata :
5+ name : " {{ .Values.release_name }}"
6+ labels :
7+ app : " {{ .Values.release_name }}"
8+ component : clickhouse
9+ spec :
10+ replicas : {{ .Values.replicas }}
11+ selector :
12+ matchLabels :
13+ app : " {{ .Values.release_name }}"
14+ template :
15+ metadata :
16+ labels :
17+ app : " {{ .Values.release_name }}"
18+ component : clickhouse
19+ spec :
20+ {{- if .Values.securityContext }}
21+ securityContext :
22+ runAsUser : {{ .Values.securityContext.runAsUser }}
23+ runAsGroup : {{ .Values.securityContext.runAsGroup }}
24+ fsGroup : {{ .Values.securityContext.fsGroup }}
25+ {{- end }}
26+ containers :
27+ - name : " {{ .Values.release_name }}"
28+ image : " {{ .Values.images.clickhouse.registry }}/{{ .Values.images.clickhouse.repository }}:{{ .Values.images.clickhouse.tag }}"
29+ imagePullPolicy : {{ .Values.pullPolicy }}
30+ ports :
31+ - name : http
32+ containerPort : {{ .Values.service.httpPort }}
33+ protocol : TCP
34+ - name : native
35+ containerPort : {{ .Values.service.nativePort }}
36+ protocol : TCP
37+ # Non-sensitive env's from values.yaml
38+ env :
39+ - name : CLICKHOUSE_DB
40+ value : " {{ .Values.env.CLICKHOUSE_DB }}"
41+ # Sensitive env's from Kubernetes Secret
42+ {{- if .Values.envFrom }}
43+ envFrom :
44+ {{- toYaml .Values.envFrom | nindent 12 }}
45+ {{- end }}
46+ {{- if .Values.healthcheck.enabled }}
47+ livenessProbe :
48+ httpGet :
49+ path : " {{ .Values.healthcheck.httpPath }}"
50+ port : {{ .Values.service.httpPort }}
51+ initialDelaySeconds : {{ .Values.healthcheck.initialDelaySeconds }}
52+ periodSeconds : {{ .Values.healthcheck.periodSeconds }}
53+ timeoutSeconds : {{ .Values.healthcheck.timeoutSeconds }}
54+ failureThreshold : {{ .Values.healthcheck.failureThreshold }}
55+ readinessProbe :
56+ httpGet :
57+ path : " {{ .Values.healthcheck.httpPath }}"
58+ port : {{ .Values.service.httpPort }}
59+ initialDelaySeconds : {{ .Values.healthcheck.initialDelaySeconds }}
60+ periodSeconds : {{ .Values.healthcheck.periodSeconds }}
61+ timeoutSeconds : {{ .Values.healthcheck.timeoutSeconds }}
62+ failureThreshold : {{ .Values.healthcheck.failureThreshold }}
63+ {{- end }}
64+ {{- if .Values.persistence.enabled }}
65+ volumeMounts :
66+ - name : langfuse-clickhouse-data
67+ mountPath : /var/lib/clickhouse
68+ - name : langfuse-clickhouse-logs
69+ mountPath : /var/log/clickhouse-server
70+ {{- end }}
71+ resources :
72+ requests :
73+ memory : " {{ .Values.resources.requests.memory }}"
74+ cpu : " {{ .Values.resources.requests.cpu }}"
75+ limits :
76+ memory : " {{ .Values.resources.limits.memory }}"
77+ cpu : " {{ .Values.resources.limits.cpu }}"
78+ {{- if .Values.persistence.enabled }}
79+ volumes :
80+ - name : langfuse-clickhouse-data
81+ persistentVolumeClaim :
82+ claimName : " {{ .Values.release_name }}-data"
83+ - name : langfuse-clickhouse-logs
84+ persistentVolumeClaim :
85+ claimName : " {{ .Values.release_name }}-logs"
86+ {{- end }}
87+ restartPolicy : Always
88+ {{- end }}
0 commit comments