blob: eef716eae6c818d08b493ff34918857b3b740dc2 [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:
Andreas Geissler891eeb72023-10-12 13:10:53 +020044 heap_initial_size: 512M
45 heap_max_size: 4096M
dasarathi52802465e8f782023-05-03 09:51:20 +000046 hostNetwork: false
47 datacenters:
48 - name: dc1
49 size: 3
50 stargate:
51 tag: v1.0.76
52 size: 1
53 jvmOptions:
54 heapSize: 384Mi
55
56#################################################################
57# Secrets metaconfig
58# used to store the default superuser for k8ssandra-operator
59#################################################################
60secrets:
61 - uid: *secretName
62 type: genericKV
63 externalSecret: '{{ tpl (default "" .Values.k8ssandraOperator.config.userCredentialsExternalSecret) . }}'
64 envs:
65 - name: username
66 value: *superusername
67 - name: password
68 value: *superuserpassword
69
70ingress:
71 enabled: false
72 service:
73 - baseaddr: "reaper-dc1"
74 path: "/webui"
75 name: "cassandra-dc1-reaper-service"
76 port: 8080
77
prpatelafedf2c2018-09-07 15:28:38 +000078# application image
Sylvain Desbureaux7743d8b2020-11-19 16:45:23 +010079image: cassandra:3.11.4
prpatelafedf2c2018-09-07 15:28:38 +000080pullPolicy: Always
81
82# flag to enable debugging - application support required
83debugEnabled: false
84
prpatelafedf2c2018-09-07 15:28:38 +000085# application configuration
86config:
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +000087 cluster_domain: cluster.local
prpatelafedf2c2018-09-07 15:28:38 +000088 heap:
Michal Jagiello9a3395b2022-06-07 08:38:50 +000089 max: 4096M
90 min: 200M
prpatelafedf2c2018-09-07 15:28:38 +000091 jvmOpts: -Dcassandra.consistent.rangemovement=false
92 clusterName: cassandra
93 dataCenter: Pod
94 rackName: Rack
95 autoBootstrap: true
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +000096 # If hostNetwork is true then provide the comma separated list of seeds.
97 #seeds:seed1,seed2
prpatelafedf2c2018-09-07 15:28:38 +000098
99# default number of instances
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000100replicaCount: 3
101
102hostNetwork: false
prpatelafedf2c2018-09-07 15:28:38 +0000103
104nodeSelector: {}
105
106affinity: {}
107
108# probe configuration parameters
109liveness:
Sylvain Desbureauxe7616c32021-05-05 10:47:58 +0200110 initialDelaySeconds: 1
111 periodSeconds: 10
Sylvain Desbureaux276c3d92021-02-22 16:23:04 +0100112 timeoutSeconds: 10
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000113 successThreshold: 1
114 failureThreshold: 3
prpatelafedf2c2018-09-07 15:28:38 +0000115 # necessary to disable liveness probe when setting breakpoints
116 # in debugger so K8s doesn't restart unresponsive container
117 enabled: true
118
119readiness:
Sylvain Desbureauxe7616c32021-05-05 10:47:58 +0200120 initialDelaySeconds: 1
121 periodSeconds: 10
Sylvain Desbureaux276c3d92021-02-22 16:23:04 +0100122 timeoutSeconds: 10
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000123 successThreshold: 1
124 failureThreshold: 3
prpatelafedf2c2018-09-07 15:28:38 +0000125
Sylvain Desbureauxe7616c32021-05-05 10:47:58 +0200126startup:
127 initialDelaySeconds: 10
128 periodSeconds: 10
129 timeoutSeconds: 10
130 successThreshold: 1
131 failureThreshold: 90
132
prpatelafedf2c2018-09-07 15:28:38 +0000133service:
prpatelafedf2c2018-09-07 15:28:38 +0000134 name: cassandra
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100135 headless:
136 suffix: ""
137 annotations:
138 service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
139 publishNotReadyAddresses: true
140 headlessPorts:
141 - name: tcp-intra
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000142 port: 7000
143 - name: tls
144 port: 7001
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100145 - name: tcp-jmx
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000146 port: 7199
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100147 - name: tcp-cql
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000148 port: 9042
shrek2000f336f6d2020-02-25 16:11:26 +0200149 ## thrift protocol is deprecated . Should be removed. Being left until all project removes it.
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100150 - name: tcp-thrift
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000151 port: 9160
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100152 - name: tcp-agent
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000153 port: 61621
prpatelafedf2c2018-09-07 15:28:38 +0000154
Andreas Geissler904b8912022-07-13 11:51:58 +0200155podAnnotations:
156 # sidecar.istio.io/inject: "false"
157 traffic.sidecar.istio.io/excludeInboundPorts: "7000,7001"
158 traffic.sidecar.istio.io/includeInboundPorts: '*'
159 traffic.sidecar.istio.io/excludeOutboundPorts: "7000,7001"
Andreas Geisslerbc550dc2023-06-26 17:09:35 +0200160 prometheus.io/scrape: 'true'
161 prometheus.io/port: '8080'
162
prpatelafedf2c2018-09-07 15:28:38 +0000163podManagementPolicy: OrderedReady
164updateStrategy:
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000165 type: RollingUpdate
prpatelafedf2c2018-09-07 15:28:38 +0000166
prpatelafedf2c2018-09-07 15:28:38 +0000167persistence:
168 enabled: true
169
170 ## A manually managed Persistent Volume and Claim
171 ## Requires persistence.enabled: true
172 ## If defined, PVC must be created manually before volume will be bound
173 # existingClaim:
174 volumeReclaimPolicy: Retain
175
176 ## database data Persistent Volume Storage Class
177 ## If defined, storageClassName: <storageClass>
178 ## If set to "-", storageClassName: "", which disables dynamic provisioning
179 ## If undefined (the default) or set to null, no storageClassName spec is
180 ## set, choosing the default provisioner. (gp2 on AWS, standard on
181 ## GKE, AWS & OpenStack)
182 ##
183 ## storageClass: "-"
Sylvain Desbureauxb7ed2ee2019-11-29 11:35:13 +0100184 ## Not set as it depends of the backup enabledment or not.
Sylvain Desbureaux60c74802019-12-12 14:35:01 +0100185 accessMode: ReadWriteOnce
Sylvain Desbureaux13585872021-05-07 08:18:53 +0200186 size: 10Gi
prpatelafedf2c2018-09-07 15:28:38 +0000187 mountPath: /dockerdata-nfs
188 mountSubPath: cassandra
189 storageType: local
Akansha Dua7b6e1982019-09-04 13:36:12 +0000190 backup:
191 mountPath: /dockerdata-nfs/backup
prpatelafedf2c2018-09-07 15:28:38 +0000192
Mahendra Raghuwanshif59d9252019-02-20 06:54:46 +0000193configOverrides: {}
prpatelafedf2c2018-09-07 15:28:38 +0000194
Sylvain Desbureaux77c848a2020-09-23 14:21:30 +0200195# resources: {}
prpatelafedf2c2018-09-07 15:28:38 +0000196 # We usually recommend not to specify default resources and to leave this as a conscious
197 # choice for the user. This also increases chances charts run on environments with little
198 # resources, such as Minikube. If you do want to specify resources, uncomment the following
199 # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
200 #
201 # Example:
202 # Configure resource requests and limits
203 # ref: http://kubernetes.io/docs/user-guide/compute-resources/
204 # Minimum memory for development is 2 CPU cores and 4GB memory
205 # Minimum memory for production is 4 CPU cores and 8GB memory
Sylvain Desbureaux77c848a2020-09-23 14:21:30 +0200206resources:
207 limits:
Michal Jagiello9a3395b2022-06-07 08:38:50 +0000208 cpu: 2
209 memory: 8Gi
Sylvain Desbureaux77c848a2020-09-23 14:21:30 +0200210 requests:
211 cpu: 0.2
212 memory: 2.5Gi
Akansha Dua7b6e1982019-09-04 13:36:12 +0000213backup:
214 enabled: false
215 cron: "00 00 * * *"
216 retentionPeriod: 3
217 dbSize: 1
218 keyspacesToSkip:
219 - name: system_traces
220 - name: system_auth
221 - name: system_distributed
farida azmy661c81a2021-03-09 11:38:20 +0200222
223#Pods Service Account
224serviceAccount:
225 nameOverride: cassandra
226 roles:
227 - nothing
Suresh Charane1a70a12022-01-13 06:56:53 -0500228
229# Cassandra Metrics
230metrics:
231 enabled: false
232 image: bitnami/cassandra-exporter:2.3.4-debian-10-r641
233 pullPolicy: IfNotPresent
234 ports:
235 - name: tcp-metrics
236 port: 8080
237 podAnnotations:
238 prometheus.io/scrape: 'true'
239 prometheus.io/port: '8080'
240 livenessProbe:
241 enabled: true
242 httpGet:
243 path: /metrics
244 port: 8080
245 initialDelaySeconds: 30
246 periodSeconds: 10
247 timeoutSeconds: 5
248 successThreshold: 1
249 failureThreshold: 3
250 readinessProbe:
251 httpGet:
252 path: /metrics
253 port: 8080
254 enabled: true
255 initialDelaySeconds: 5
256 periodSeconds: 10
257 timeoutSeconds: 5
258 successThreshold: 1
259 failureThreshold: 3
260 serviceMonitor:
261 enabled: false
262 targetPort: 8080
263 path: /metrics
264 basicAuth:
265 enabled: false
266 ## Namespace in which Prometheus is running
267 ##
268 # namespace: monitoring
269
270 ## Interval at which metrics should be scraped.
271 #interval: 30s
272
273 ## Timeout after which the scrape is ended
274 # scrapeTimeout: 10s
275
276 ## ServiceMonitor selector labels
277 selector:
278 app.kubernetes.io/name: '{{ include "common.name" . }}'
279 helm.sh/chart: '{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}'
280 app.kubernetes.io/instance: '{{ include "common.release" . }}'
281 app.kubernetes.io/managed-by: '{{ .Release.Service }}'
282
283 ## RelabelConfigs to apply to samples before scraping
284 relabelings: []
285
286 ## MetricRelabelConfigs to apply to samples before ingestion
287 metricRelabelings: []