| # Copyright © 2022 Amdocs, Bell Canada, AT&T, Bitnami |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # Default values for cassandra. |
| # This is a YAML-formatted file. |
| # Declare variables to be passed into your templates. |
| global: # global defaults |
| nodePortPrefix: 302 |
| persistence: |
| mountPath: /dockerdata-nfs |
| backup: |
| mountPath: /dockerdata-nfs/backup |
| cassandra: |
| # flag to enable the DB creation via k8ssandra-operator |
| useOperator: true |
| # if useOperator set to "true", set "enableServiceAccount to "false" |
| # as the SA is created by the Operator |
| enableServiceAccount: false |
| |
| k8ssandraOperator: |
| cassandraVersion: 4.1.3 |
| persistence: |
| #storageClassName: default |
| size: 10Gi |
| config: |
| clusterName: cassandra |
| secretName: &secretName cassandra-default-user |
| superuserName: &superusername cassandra |
| superuserPassword: &superuserpassword cassandra |
| casOptions: |
| authorizer: AllowAllAuthorizer |
| read_request_timeout: 15000ms |
| write_request_timeout: 15000ms |
| counter_write_request_timeout: 15000ms |
| request_timeout: 15000ms |
| auto_snapshot: false |
| commitlog_segment_size: 128MiB |
| commitlog_sync_period: 15000ms |
| concurrent_reads: 16 |
| concurrent_writes: 16 |
| counter_cache_size: 16MiB |
| jvmOptions: |
| heap_initial_size: 512M |
| heap_max_size: 4096M |
| hostNetwork: false |
| datacenters: |
| - name: dc1 |
| size: 3 |
| resources: |
| requests: |
| cpu: 2 |
| memory: 8Gi |
| limits: |
| cpu: 8 |
| memory: 8Gi |
| reaper: |
| enabled: true |
| stargate: |
| enabled: false |
| tag: v1.0.77 |
| size: 1 |
| jvmOptions: |
| heapSize: 384Mi |
| |
| ################################################################# |
| # Secrets metaconfig |
| # used to store the default superuser for k8ssandra-operator |
| ################################################################# |
| secrets: |
| - uid: *secretName |
| type: genericKV |
| externalSecret: '{{ tpl (default "" .Values.k8ssandraOperator.config.userCredentialsExternalSecret) . }}' |
| envs: |
| - name: username |
| value: *superusername |
| - name: password |
| value: *superuserpassword |
| |
| ingress: |
| enabled: false |
| service: |
| - baseaddr: "reaper-dc1" |
| path: "/webui" |
| name: "cassandra-dc1-reaper-service" |
| port: 8080 |
| |
| # application image |
| image: cassandra:3.11.4 |
| pullPolicy: Always |
| |
| # flag to enable debugging - application support required |
| debugEnabled: false |
| |
| # application configuration |
| config: |
| cluster_domain: cluster.local |
| heap: |
| max: 4096M |
| min: 200M |
| jvmOpts: -Dcassandra.consistent.rangemovement=false |
| clusterName: cassandra |
| dataCenter: Pod |
| rackName: Rack |
| autoBootstrap: true |
| # If hostNetwork is true then provide the comma separated list of seeds. |
| #seeds:seed1,seed2 |
| |
| # default number of instances |
| replicaCount: 3 |
| |
| hostNetwork: false |
| |
| nodeSelector: {} |
| |
| affinity: {} |
| |
| # probe configuration parameters |
| liveness: |
| initialDelaySeconds: 1 |
| periodSeconds: 10 |
| timeoutSeconds: 10 |
| successThreshold: 1 |
| failureThreshold: 3 |
| # necessary to disable liveness probe when setting breakpoints |
| # in debugger so K8s doesn't restart unresponsive container |
| enabled: true |
| |
| readiness: |
| initialDelaySeconds: 1 |
| periodSeconds: 10 |
| timeoutSeconds: 10 |
| successThreshold: 1 |
| failureThreshold: 3 |
| |
| startup: |
| initialDelaySeconds: 10 |
| periodSeconds: 10 |
| timeoutSeconds: 10 |
| successThreshold: 1 |
| failureThreshold: 90 |
| |
| service: |
| name: cassandra |
| headless: |
| suffix: "" |
| annotations: |
| service.alpha.kubernetes.io/tolerate-unready-endpoints: "true" |
| publishNotReadyAddresses: true |
| headlessPorts: |
| - name: tcp-intra |
| port: 7000 |
| - name: tls |
| port: 7001 |
| - name: tcp-jmx |
| port: 7199 |
| - name: tcp-cql |
| port: 9042 |
| ## thrift protocol is deprecated . Should be removed. Being left until all project removes it. |
| - name: tcp-thrift |
| port: 9160 |
| - name: tcp-agent |
| port: 61621 |
| |
| podAnnotations: |
| # sidecar.istio.io/inject: "false" |
| traffic.sidecar.istio.io/excludeInboundPorts: "7000,7001,7199,50051" |
| traffic.sidecar.istio.io/includeInboundPorts: '*' |
| traffic.sidecar.istio.io/excludeOutboundPorts: "7000,7001,7199,50051" |
| |
| podManagementPolicy: OrderedReady |
| updateStrategy: |
| type: RollingUpdate |
| |
| persistence: |
| enabled: true |
| |
| ## A manually managed Persistent Volume and Claim |
| ## Requires persistence.enabled: true |
| ## If defined, PVC must be created manually before volume will be bound |
| # existingClaim: |
| volumeReclaimPolicy: Retain |
| |
| ## database data Persistent Volume Storage Class |
| ## If defined, storageClassName: <storageClass> |
| ## If set to "-", storageClassName: "", which disables dynamic provisioning |
| ## If undefined (the default) or set to null, no storageClassName spec is |
| ## set, choosing the default provisioner. (gp2 on AWS, standard on |
| ## GKE, AWS & OpenStack) |
| ## |
| ## storageClass: "-" |
| ## Not set as it depends of the backup enabledment or not. |
| accessMode: ReadWriteOnce |
| size: 10Gi |
| mountPath: /dockerdata-nfs |
| mountSubPath: cassandra |
| storageType: local |
| backup: |
| mountPath: /dockerdata-nfs/backup |
| |
| configOverrides: {} |
| |
| # resources: {} |
| # We usually recommend not to specify default resources and to leave this as a conscious |
| # choice for the user. This also increases chances charts run on environments with little |
| # resources, such as Minikube. If you do want to specify resources, uncomment the following |
| # lines, adjust them as necessary, and remove the curly braces after 'resources:'. |
| # |
| # Example: |
| # Configure resource requests and limits |
| # ref: http://kubernetes.io/docs/user-guide/compute-resources/ |
| # Minimum memory for development is 2 CPU cores and 4GB memory |
| # Minimum memory for production is 4 CPU cores and 8GB memory |
| resources: |
| limits: |
| cpu: "2" |
| memory: "16Gi" |
| requests: |
| cpu: "0.2" |
| memory: "2.5Gi" |
| backup: |
| enabled: false |
| cron: "00 00 * * *" |
| retentionPeriod: 3 |
| dbSize: 1 |
| keyspacesToSkip: |
| - name: system_traces |
| - name: system_auth |
| - name: system_distributed |
| |
| #Pods Service Account |
| serviceAccount: |
| nameOverride: cassandra |
| roles: |
| - nothing |
| |
| # Cassandra Metrics |
| metrics: |
| enabled: false |
| image: bitnami/cassandra-exporter:2.3.4-debian-10-r641 |
| pullPolicy: IfNotPresent |
| ports: |
| - name: tcp-metrics |
| port: 8080 |
| podAnnotations: |
| prometheus.io/scrape: 'true' |
| prometheus.io/port: '8080' |
| livenessProbe: |
| enabled: true |
| httpGet: |
| path: /metrics |
| port: 8080 |
| initialDelaySeconds: 30 |
| periodSeconds: 10 |
| timeoutSeconds: 5 |
| successThreshold: 1 |
| failureThreshold: 3 |
| readinessProbe: |
| httpGet: |
| path: /metrics |
| port: 8080 |
| enabled: true |
| initialDelaySeconds: 5 |
| periodSeconds: 10 |
| timeoutSeconds: 5 |
| successThreshold: 1 |
| failureThreshold: 3 |
| serviceMonitor: |
| enabled: false |
| targetPort: 8080 |
| path: /metrics |
| basicAuth: |
| enabled: false |
| ## Namespace in which Prometheus is running |
| ## |
| # namespace: monitoring |
| |
| ## Interval at which metrics should be scraped. |
| #interval: 30s |
| |
| ## Timeout after which the scrape is ended |
| # scrapeTimeout: 10s |
| |
| ## ServiceMonitor selector labels |
| selector: |
| app.kubernetes.io/name: '{{ include "common.name" . }}' |
| helm.sh/chart: '{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}' |
| app.kubernetes.io/instance: '{{ include "common.release" . }}' |
| app.kubernetes.io/managed-by: '{{ .Release.Service }}' |
| |
| ## RelabelConfigs to apply to samples before scraping |
| relabelings: [] |
| |
| ## MetricRelabelConfigs to apply to samples before ingestion |
| metricRelabelings: [] |