Skip to main content

CassandraCluster Configuration

CassandraCluster Field Specification Reference

FieldDescriptionIs RequiredDefault
dcs Cassandra datacenters configurationY
dcs[].name Datacenter nameY
dcs[].replicas Replica count for the datacenterY
dcs[].affinity Affinity configuration for the DCY
dcs[].tolerations Tolerations configuration for the DCY
imagePullSecretName Name of a k8s secret configured for pulling container imagesY
cqlConfigMapLabelKey Name of a ConfigMap label, that if present, the entries of that ConfigMap will be executed as CQL queriesNcql-scripts
adminRoleSecretName Name of the secret with admin role credentialsY
topologySpreadByZone Spread nodes evenly across zonesNtrue
rolesSecretName Name of the secret with Cassandra rolesY
cassandra A Cassandra node configurationN
cassandra.configOverrides A yaml formatted string with values to override default cassandra.yaml config valuesN
cassandra.purgeGossip Controls if the operator should purge Cassandra's gossip data on start of the nodeNtrue
cassandra.numSeeds Number of nodes (per DC) used as seedsN2
cassandra.terminationGracePeriodSeconds Duration in seconds the pod needs to terminate gracefullyN300
cassandra.image Cassandra container image to useNas configured for the operator
cassandra.sysctls A key-value map of sysctl settings needed to be set.Nsysctl docs
cassandra.imagePullPolicy Image pull policy for Cassandra imageNIfNotPresent
cassandra.resources Resource requests and limits for the containerN{}
cassandra.persistence Persistence configurationN{}
cassandra.persistence.enabled If disabled, an emptydir volume will be created. Can't be changed after cassandracluster is created.Nfalse
cassandra.persistence.commitLogVolume Enable/disable usage of a separate volume for commitlog.Nfalse
cassandra.persistence.labels Labels set for the Persistent Volume ClaimN{}
cassandra.persistence.annotations Annotations set for Persistent Volume ClaimN{}
cassandra.persistence.dataVolumeClaimSpec PersistentVolumeClaimSpec configsN{}
cassandra.persistence.commitLogVolumeClaimSpecPersistentVolumeClaimSpec configsN{}
cassandra.zonesAsRacks Enable/disable treat zones as racks. See Treat Zones as Racks in multi-cluster configurations.Nfalse
cassandra.jvmOptions An array of JVM options applied to Cassandra JVM. E.g. ["-Xmx1024M", "-Xms512M"] to set the maximum an minimum heap sizes.N
cassandra.monitoring Monitoring settingsN
cassandra.monitoring.enabled Enables or disables Cassandra monitoringNfalse
cassandra.monitoring.agent Java agent to be used for exporting Cassandra metrics. Allowed values: [tlp, instaclustr, datastax]Ntlp
cassandra.monitoring.serviceMonitor Service monitor for C* metricsN
cassandra.monitoring.serviceMonitor.enabled Enables or disables creation of C* service monitorNfalse
cassandra.monitoring.serviceMonitor.namespace Namespace where C* service monitor should be deployedN
cassandra.monitoring.serviceMonitor.labels Labels for C* service monitorN{}
cassandra.monitoring.serviceMonitor.scrapeInterval Interval at which C* metrics should be scrapedN30s
prober Prober settingsN
prober.image Prober container image to useNas configured for the operator
prober.imagePullPolicy Image pull policy for prober imageNIfNotPresent
prober.resources Resource requests and limits for the containerN{}
prober.debug Enable or disable verbose loggingNfalse
prober.jolokia Jolokia settingsN
prober.jolokia.image Jolokia container image to useNas configured for the operator
prober.jolokia.imagePullPolicy Image pull policy for Jolokia imageNIfNotPresent
prober.jolokia.resources Resource requests and limits for the containerN{}
prober.tolerations Tolerations configuration for proberN
prober.nodeSelector NodeSelector configuration for proberN
prober.affinity Affinity configuration for prober podN
ingress Ingress settings for the regions. Required if an external managed cluster is coneected to the current region.N
ingress.domain The ingress domain used to create Ingress resourcesN""
ingress.secret The TLS secret for configuring a secure IngressN""
ingress.annotations Annotations set for the Ingress resourcesN[]
externalRegions List of external regions connected to the current regionN[]
externalRegions.managed List of managed by mr-cassop regions connected to the current regionN[]
externalRegions.managed[].domain The ingress domain of an external mr-cassop managed regionN
externalRegions.managed[].namespace The namespace where the other operator managed region is deployed toNNamespace of the current region
externalRegions.umanaged List of external unmanaged Cassandra regions. Should be used to connect the current region to an existing Cassandra cluster not managed by the operatorN
externalRegions.unmanaged[].seeds List of seed hosts of an external unmanaged Cassandra regionN
externalRegions.unmanaged[].dcs List of DCs of the external unmanaged regionN
externalRegions.unmanaged[].dcs[].name Name of the DC in the external regionN
externalRegions.unmanaged[].dcs[].rf Desired replication factor of DC in the external region. Used to configure the system keyspacesN
reaper Reaper settingsN
reaper.image Reaper container image to useNas configured by the operator
reaper.imagePullPolicy Image pull policy for reaper imageNIfNotPresent
reaper.keyspace Keyspace to store reaper control dataNreaper
reaper.tolerations See tolerations descriptionN[]
reaper.nodeSelector See nodeSelector descriptionN{}
reaper.incrementalRepair See incrementalRepair description in reaper documentationNfalse
reaper.repairManagerSchedulingIntervalSecondsSee repairManagerSchedulingIntervalSeconds description in reaper documentationN8
reaper.blacklistTWCS See blacklistTwcsTables description in reaper documentationNtrue
reaper.resources Resource requests and limits for the reaper containerN{}
reaper.serviceMonitor Service monitor for reaper metricsN
reaper.serviceMonitor.enabled Enables or disables creation of reaper service monitorNfalse
reaper.serviceMonitor.namespace Namespace where reaper service monitor should be deployedN
reaper.serviceMonitor.labels Labels for reaper service monitorN{}
reaper.serviceMonitor.scrapeInterval Interval at which reaper metrics should be scrapedN60s
reaper.scheduleRepairs See Reaper repair schedule configurationN
reaper.hangingRepairTimeoutMins The amount of time in minutes to wait for a single repair to finish.N30
reaper.repairThreadCount Since Cassandra 2.2, repairs are multithreaded in order to process several token ranges concurrently and speed up the process. No more than four threads are allowedN1
reaper.segmentCountPerNode Defines the default amount of repair segments to create for newly registered Cassandra repair runs, for each node in the cluster.N64
reaper.autoScheduling See autoScheduling description in reaper documentationN
reaper.autoScheduling.enabled Enables or disables autoSchedulingNfalse
reaper.autoScheduling.periodBetweenPolls Time to wait before checking whether to start repair taskNPT10M (10 minutes)
reaper.autoScheduling.timeBeforeFirstScheduleGrace period before first repair in the scheduleNPT5M
reaper.autoScheduling.scheduleSpreadPeriod Time spacing between each repair scheduleNPT6H
reaper.autoScheduling.excludedKeyspaces Keyspaces to be excluded from repair scheduleN[]
maintenance List of maintenance requestsN[]
maintenance.dc Name of the DC for the maintenance requestY
maintenance.pods List of pod names to put in maintenance modeN[]
systemKeyspaces System keyspaces configurationN
systemKeyspaces.keyspaces List of keyspaces to configureN[]
systemKeyspaces.dcs List of datacenters to apply the configuration toNAll datacenters
systemKeyspaces.dcs[].name Name of the DC to set replication factor forY
systemKeyspaces.dcs[].rf Replication factor to set for the DCY
hostPort Cassandra hostPort configuration. See hostPort Usage for detailsN
hostPort.enabled Enables or disables use of host port for CassandraNfalse
hostPort.useExternalHostIP Enable usage of host internal IP for CassandraNfalse
hostPort.ports List of ports to set for hostPortN[]
jmxAuth Type of JMX authentication. Can be internal and local_filesNinternal
networkPolicies Kubernetes network policies configurationN
networkPolicies.enabled Enables Kubernetes network policies configuration. See Network Policies usage for detailsNfalse
networkPolicies.allowReaperNodeIPs Allow reaper pods within the region and external regions to talk to C* nodes via JMX via worker nodes network.Ntrue
networkPolicies.extraIngressRules Configuration for granting access to C* cluster for ingressN{}
networkPolicies.extraCassandraRules Configuration for granting access to C* cluster for external clientsN{}
networkPolicies.extraPrometheusRules Configuration for granting access to C* cluster for prometheusN{}
networkPolicies.extraCassandraIPs Configuration for granting access to C* cluster for non-managed C* nodesN[]