1
+ {{- if .Values.ingester.statefulSet.enabled -}}
2
+ apiVersion : apps/v1
3
+ kind : StatefulSet
4
+ metadata :
5
+ name : {{ template "cortex.fullname" . }}-ingester
6
+ namespace : {{ .Release.Namespace }}
7
+ labels :
8
+ app : {{ template "cortex.name" . }}-ingester
9
+ chart : {{ template "cortex.chart" . }}
10
+ release : {{ .Release.Name }}
11
+ heritage : {{ .Release.Service }}
12
+ annotations :
13
+ {{- toYaml .Values.ingester.annotations | nindent 4 }}
14
+ spec :
15
+ replicas : {{ .Values.ingester.replicas }}
16
+ selector :
17
+ matchLabels :
18
+ app : {{ template "cortex.name" . }}-ingester
19
+ release : {{ .Release.Name }}
20
+ serviceName : {{ template "cortex.fullname" . }}-ingester
21
+ {{- if .Values.ingester.persistentVolume.enabled }}
22
+ volumeClaimTemplates :
23
+ - metadata :
24
+ name : storage
25
+ {{- if .Values.ingester.persistentVolume.annotations }}
26
+ annotations :
27
+ {{ toYaml .Values.ingester.persistentVolume.annotations | nindent 10 }}
28
+ {{- end }}
29
+ spec :
30
+ {{- if .Values.ingester.persistentVolume.storageClass }}
31
+ {{- if (eq "-" .Values.ingester.persistentVolume.storageClass) }}
32
+ storageClassName : " "
33
+ {{- else }}
34
+ storageClassName : " {{ .Values.ingester.persistentVolume.storageClass }}"
35
+ {{- end }}
36
+ {{- end }}
37
+ accessModes :
38
+ {{ toYaml .Values.ingester.persistentVolume.accessModes | nindent 10 }}
39
+ resources :
40
+ requests :
41
+ storage : " {{ .Values.ingester.persistentVolume.size }}"
42
+ {{- end }}
43
+ template :
44
+ metadata :
45
+ labels :
46
+ app : {{ template "cortex.name" . }}-ingester
47
+ name : {{ template "cortex.name" . }}-ingester
48
+ target : ingester
49
+ release : {{ .Release.Name }}
50
+ {{- with .Values.ingester.podLabels }}
51
+ {{- toYaml . | nindent 8 }}
52
+ {{- end }}
53
+ annotations :
54
+ {{- if .Values.useExternalConfig }}
55
+ checksum/config : {{ .Values.externalConfigVersion }}
56
+ {{- else }}
57
+ checksum/config : {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
58
+ {{- end }}
59
+ {{- with .Values.ingester.podAnnotations }}
60
+ {{- toYaml . | nindent 8 }}
61
+ {{- end }}
62
+ spec :
63
+ serviceAccountName : {{ template "cortex.serviceAccountName" . }}
64
+ {{- if .Values.ingester.priorityClassName }}
65
+ priorityClassName : {{ .Values.ingester.priorityClassName }}
66
+ {{- end }}
67
+ securityContext :
68
+ {{- toYaml .Values.ingester.securityContext | nindent 8 }}
69
+ initContainers :
70
+ {{- toYaml .Values.ingester.initContainers | nindent 8 }}
71
+ {{- if .Values.image.pullSecrets }}
72
+ imagePullSecrets :
73
+ {{- range .Values.image.pullSecrets }}
74
+ - name : {{ . }}
75
+ {{- end }}
76
+ {{- end }}
77
+ nodeSelector :
78
+ {{- toYaml .Values.ingester.nodeSelector | nindent 8 }}
79
+ affinity :
80
+ {{- toYaml .Values.ingester.affinity | nindent 8 }}
81
+ tolerations :
82
+ {{- toYaml .Values.ingester.tolerations | nindent 8 }}
83
+ terminationGracePeriodSeconds : {{ .Values.ingester.terminationGracePeriodSeconds }}
84
+ volumes :
85
+ - name : config
86
+ secret :
87
+ {{- if .Values.useExternalConfig }}
88
+ secretName : {{ .Values.externalConfigSecretName }}
89
+ {{- else }}
90
+ secretName : {{ template "cortex.fullname" . }}
91
+ {{- end }}
92
+ {{- if not .Values.ingester.persistentVolume.enabled }}
93
+ - name : storage
94
+ emptyDir : {}
95
+ {{- end }}
96
+ {{- if .Values.ingester.extraVolumes }}
97
+ {{ toYaml .Values.ingester.extraVolumes | nindent 8 }}
98
+ {{- end }}
99
+ containers :
100
+ {{- if .Values.ingester.extraContainers }}
101
+ {{ toYaml .Values.ingester.extraContainers | nindent 8 }}
102
+ {{- end }}
103
+ - name : {{ .Chart.Name }}
104
+ image : " {{ .Values.image.repository }}:{{ .Values.image.tag }}"
105
+ imagePullPolicy : {{ .Values.image.pullPolicy }}
106
+ args :
107
+ - " -target=ingester"
108
+ - " -config.file=/etc/cortex/cortex.yaml"
109
+ {{- if .Values.memcached.enabled }}
110
+ - -store.chunks-cache.memcached.addresses=dns+{{ template "cortex.fullname" . }}-memcached.{{ .Release.Namespace }}.svc.cluster.local:11211
111
+ {{- end }}
112
+ {{- if index .Values "memcached-index-write" "enabled" }}
113
+ - -store.index-cache-write.memcached.addresses=dns+{{ template "cortex.fullname" . }}-memcached-index-write.{{ .Release.Namespace }}.svc.cluster.local:11211
114
+ {{- end }}
115
+ {{- range $key, $value := .Values.ingester.extraArgs }}
116
+ - " -{{ $key }}={{ $value }}"
117
+ {{- end }}
118
+ volumeMounts :
119
+ {{- if .Values.ingester.extraVolumeMounts }}
120
+ {{ toYaml .Values.ingester.extraVolumeMounts | nindent 12}}
121
+ {{- end }}
122
+ - name : config
123
+ mountPath : /etc/cortex
124
+ - name : storage
125
+ mountPath : " /data"
126
+ {{- if .Values.ingester.persistentVolume.subPath }}
127
+ subPath : {{ .Values.ingester.persistentVolume.subPath }}
128
+ {{- else }}
129
+ {{- if .Values.ingester.persistence.subPath }}
130
+ # # DEPRECATED: use persistentVolume.subPath instead
131
+ subPath : {{ .Values.ingester.persistence.subPath }}
132
+ {{- end }}
133
+ {{- end }}
134
+ ports :
135
+ - name : http-metrics
136
+ containerPort : {{ .Values.config.server.http_listen_port }}
137
+ protocol : TCP
138
+ livenessProbe :
139
+ {{- toYaml .Values.ingester.livenessProbe | nindent 12 }}
140
+ readinessProbe :
141
+ {{- toYaml .Values.ingester.readinessProbe | nindent 12 }}
142
+ resources :
143
+ {{- toYaml .Values.ingester.resources | nindent 12 }}
144
+ securityContext :
145
+ readOnlyRootFilesystem : true
146
+ env :
147
+ {{- if .Values.ingester.env }}
148
+ {{- toYaml .Values.ingester.env | nindent 12 }}
149
+ {{- end }}
150
+ {{- end -}}
0 commit comments