blob: 930fe9b2d34c0a85a8782fb07c681eca84443b57 [file] [log] [blame]
Suresh Charane1a70a12022-01-13 06:56:53 -05001# Copyright © 2022 Amdocs, Bell Canada, AT&T, Bitnami
prpatelafedf2c2018-09-07 15:28:38 +00002#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15# Default values for cassandra.
16# This is a YAML-formatted file.
17# Declare variables to be passed into your templates.
18global: # global defaults
19 nodePortPrefix: 302
Akansha Dua7b6e1982019-09-04 13:36:12 +000020 persistence:
21 mountPath: /dockerdata-nfs
22 backup:
23 mountPath: /dockerdata-nfs/backup
Andreas Geisslercfd84342023-08-16 17:18:49 +020024 cassandra:
25 # flag to enable the DB creation via k8ssandra-operator
26 useOperator: true
27 # if useOperator set to "true", set "enableServiceAccount to "false"
28 # as the SA is created by the Operator
29 enableServiceAccount: false
prpatelafedf2c2018-09-07 15:28:38 +000030
dasarathi52802465e8f782023-05-03 09:51:20 +000031k8ssandraOperator:
dasarathi52802465e8f782023-05-03 09:51:20 +000032 cassandraVersion: 4.0.1
33 persistence:
Andreas Geissler7e14d242023-07-17 17:25:07 +020034 #storageClassName: default
dasarathi52802465e8f782023-05-03 09:51:20 +000035 size: 10Gi
36 config:
37 clusterName: cassandra
38 secretName: &secretName cassandra-default-user
39 superuserName: &superusername cassandra
40 superuserPassword: &superuserpassword cassandra
41 casOptions:
42 authorizer: AllowAllAuthorizer
43 jvmOptions:
44 heapSize: 512M
45 hostNetwork: false
46 datacenters:
47 - name: dc1
48 size: 3
49 stargate:
50 tag: v1.0.76
51 size: 1
52 jvmOptions:
53 heapSize: 384Mi
54
55#################################################################
56# Secrets metaconfig
57# used to store the default superuser for k8ssandra-operator
58#################################################################
59secrets:
60 - uid: *secretName
61 type: genericKV
62 externalSecret: '{{ tpl (default "" .Values.k8ssandraOperator.config.userCredentialsExternalSecret) . }}'
63 envs:
64 - name: username
65 value: *superusername
66 - name: password
67 value: *superuserpassword
68
69ingress:
70 enabled: false
71 service:
72 - baseaddr: "reaper-dc1"
73 path: "/webui"
74 name: "cassandra-dc1-reaper-service"
75 port: 8080
76
prpatelafedf2c2018-09-07 15:28:38 +000077# application image
Sylvain Desbureaux7743d8b2020-11-19 16:45:23 +010078image: cassandra:3.11.4
prpatelafedf2c2018-09-07 15:28:38 +000079pullPolicy: Always
80
81# flag to enable debugging - application support required
82debugEnabled: false
83
prpatelafedf2c2018-09-07 15:28:38 +000084# application configuration
85config:
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +000086 cluster_domain: cluster.local
prpatelafedf2c2018-09-07 15:28:38 +000087 heap:
Michal Jagiello9a3395b2022-06-07 08:38:50 +000088 max: 4096M
89 min: 200M
prpatelafedf2c2018-09-07 15:28:38 +000090 jvmOpts: -Dcassandra.consistent.rangemovement=false
91 clusterName: cassandra
92 dataCenter: Pod
93 rackName: Rack
94 autoBootstrap: true
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +000095 # If hostNetwork is true then provide the comma separated list of seeds.
96 #seeds:seed1,seed2
prpatelafedf2c2018-09-07 15:28:38 +000097
98# default number of instances
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +000099replicaCount: 3
100
101hostNetwork: false
prpatelafedf2c2018-09-07 15:28:38 +0000102
103nodeSelector: {}
104
105affinity: {}
106
107# probe configuration parameters
108liveness:
Sylvain Desbureauxe7616c32021-05-05 10:47:58 +0200109 initialDelaySeconds: 1
110 periodSeconds: 10
Sylvain Desbureaux276c3d92021-02-22 16:23:04 +0100111 timeoutSeconds: 10
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000112 successThreshold: 1
113 failureThreshold: 3
prpatelafedf2c2018-09-07 15:28:38 +0000114 # necessary to disable liveness probe when setting breakpoints
115 # in debugger so K8s doesn't restart unresponsive container
116 enabled: true
117
118readiness:
Sylvain Desbureauxe7616c32021-05-05 10:47:58 +0200119 initialDelaySeconds: 1
120 periodSeconds: 10
Sylvain Desbureaux276c3d92021-02-22 16:23:04 +0100121 timeoutSeconds: 10
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000122 successThreshold: 1
123 failureThreshold: 3
prpatelafedf2c2018-09-07 15:28:38 +0000124
Sylvain Desbureauxe7616c32021-05-05 10:47:58 +0200125startup:
126 initialDelaySeconds: 10
127 periodSeconds: 10
128 timeoutSeconds: 10
129 successThreshold: 1
130 failureThreshold: 90
131
prpatelafedf2c2018-09-07 15:28:38 +0000132service:
prpatelafedf2c2018-09-07 15:28:38 +0000133 name: cassandra
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100134 headless:
135 suffix: ""
136 annotations:
137 service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
138 publishNotReadyAddresses: true
139 headlessPorts:
140 - name: tcp-intra
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000141 port: 7000
142 - name: tls
143 port: 7001
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100144 - name: tcp-jmx
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000145 port: 7199
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100146 - name: tcp-cql
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000147 port: 9042
shrek2000f336f6d2020-02-25 16:11:26 +0200148 ## thrift protocol is deprecated . Should be removed. Being left until all project removes it.
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100149 - name: tcp-thrift
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000150 port: 9160
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100151 - name: tcp-agent
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000152 port: 61621
prpatelafedf2c2018-09-07 15:28:38 +0000153
Andreas Geissler904b8912022-07-13 11:51:58 +0200154podAnnotations:
155 # sidecar.istio.io/inject: "false"
156 traffic.sidecar.istio.io/excludeInboundPorts: "7000,7001"
157 traffic.sidecar.istio.io/includeInboundPorts: '*'
158 traffic.sidecar.istio.io/excludeOutboundPorts: "7000,7001"
Andreas Geisslerbc550dc2023-06-26 17:09:35 +0200159 prometheus.io/scrape: 'true'
160 prometheus.io/port: '8080'
161
prpatelafedf2c2018-09-07 15:28:38 +0000162podManagementPolicy: OrderedReady
163updateStrategy:
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000164 type: RollingUpdate
prpatelafedf2c2018-09-07 15:28:38 +0000165
prpatelafedf2c2018-09-07 15:28:38 +0000166persistence:
167 enabled: true
168
169 ## A manually managed Persistent Volume and Claim
170 ## Requires persistence.enabled: true
171 ## If defined, PVC must be created manually before volume will be bound
172 # existingClaim:
173 volumeReclaimPolicy: Retain
174
175 ## database data Persistent Volume Storage Class
176 ## If defined, storageClassName: <storageClass>
177 ## If set to "-", storageClassName: "", which disables dynamic provisioning
178 ## If undefined (the default) or set to null, no storageClassName spec is
179 ## set, choosing the default provisioner. (gp2 on AWS, standard on
180 ## GKE, AWS & OpenStack)
181 ##
182 ## storageClass: "-"
Sylvain Desbureauxb7ed2ee2019-11-29 11:35:13 +0100183 ## Not set as it depends of the backup enabledment or not.
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100184 accessMode: ReadWriteOnce
Sylvain Desbureaux13585872021-05-07 08:18:53 +0200185 size: 10Gi
prpatelafedf2c2018-09-07 15:28:38 +0000186 mountPath: /dockerdata-nfs
187 mountSubPath: cassandra
188 storageType: local
Akansha Dua7b6e1982019-09-04 13:36:12 +0000189 backup:
190 mountPath: /dockerdata-nfs/backup
prpatelafedf2c2018-09-07 15:28:38 +0000191
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000192configOverrides: {}
prpatelafedf2c2018-09-07 15:28:38 +0000193
Sylvain Desbureaux77c848a2020-09-23 14:21:30 +0200194# resources: {}
prpatelafedf2c2018-09-07 15:28:38 +0000195 # We usually recommend not to specify default resources and to leave this as a conscious
196 # choice for the user. This also increases chances charts run on environments with little
197 # resources, such as Minikube. If you do want to specify resources, uncomment the following
198 # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
199 #
200 # Example:
201 # Configure resource requests and limits
202 # ref: http://kubernetes.io/docs/user-guide/compute-resources/
203 # Minimum memory for development is 2 CPU cores and 4GB memory
204 # Minimum memory for production is 4 CPU cores and 8GB memory
Sylvain Desbureaux77c848a2020-09-23 14:21:30 +0200205resources:
206 limits:
Michal Jagiello9a3395b2022-06-07 08:38:50 +0000207 cpu: 2
208 memory: 8Gi
Sylvain Desbureaux77c848a2020-09-23 14:21:30 +0200209 requests:
210 cpu: 0.2
211 memory: 2.5Gi
Akansha Dua7b6e1982019-09-04 13:36:12 +0000212backup:
213 enabled: false
214 cron: "00 00 * * *"
215 retentionPeriod: 3
216 dbSize: 1
217 keyspacesToSkip:
218 - name: system_traces
219 - name: system_auth
220 - name: system_distributed
farida azmy661c81a2021-03-09 11:38:20 +0200221
222#Pods Service Account
223serviceAccount:
224 nameOverride: cassandra
225 roles:
226 - nothing
Suresh Charane1a70a12022-01-13 06:56:53 -0500227
228# Cassandra Metrics
229metrics:
230 enabled: false
231 image: bitnami/cassandra-exporter:2.3.4-debian-10-r641
232 pullPolicy: IfNotPresent
233 ports:
234 - name: tcp-metrics
235 port: 8080
236 podAnnotations:
237 prometheus.io/scrape: 'true'
238 prometheus.io/port: '8080'
239 livenessProbe:
240 enabled: true
241 httpGet:
242 path: /metrics
243 port: 8080
244 initialDelaySeconds: 30
245 periodSeconds: 10
246 timeoutSeconds: 5
247 successThreshold: 1
248 failureThreshold: 3
249 readinessProbe:
250 httpGet:
251 path: /metrics
252 port: 8080
253 enabled: true
254 initialDelaySeconds: 5
255 periodSeconds: 10
256 timeoutSeconds: 5
257 successThreshold: 1
258 failureThreshold: 3
259 serviceMonitor:
260 enabled: false
261 targetPort: 8080
262 path: /metrics
263 basicAuth:
264 enabled: false
265 ## Namespace in which Prometheus is running
266 ##
267 # namespace: monitoring
268
269 ## Interval at which metrics should be scraped.
270 #interval: 30s
271
272 ## Timeout after which the scrape is ended
273 # scrapeTimeout: 10s
274
275 ## ServiceMonitor selector labels
276 selector:
277 app.kubernetes.io/name: '{{ include "common.name" . }}'
278 helm.sh/chart: '{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}'
279 app.kubernetes.io/instance: '{{ include "common.release" . }}'
280 app.kubernetes.io/managed-by: '{{ .Release.Service }}'
281
282 ## RelabelConfigs to apply to samples before scraping
283 relabelings: []
284
285 ## MetricRelabelConfigs to apply to samples before ingestion
286 metricRelabelings: []