Cassandra K8s study materials
Cassandra K8s study resources

Cassandra K8s key terms

Cassandra K8s · Get comfortable with the vocabulary.

StatefulSet

A Kubernetes workload controller that gives each pod a stable, ordinal identity, its own persistent volume claim, and ordered start, stop, and rolling update behavior, which is required for database pods.

Related: Headless Service, PersistentVolumeClaim, PodDisruptionBudget
Headless Service

A Service with clusterIP set to None that publishes per-pod DNS records instead of load balancing, letting Cassandra nodes and clients resolve individual pod addresses by name.

Related: StatefulSet, Seed Node, Broadcast Address
PersistentVolumeClaim

A namespaced request for storage that binds to a PersistentVolume and is mounted into a pod, decoupling the Cassandra data directory from the pod lifecycle.

Related: StorageClass, StatefulSet, Local Persistent Volume
StorageClass

A cluster-scoped template describing how volumes are dynamically provisioned, including the provisioner, parameters, reclaim policy, and volume binding mode used for Cassandra data disks.

Related: PersistentVolumeClaim, VolumeBindingMode, Reclaim Policy
VolumeBindingMode

A StorageClass field, either Immediate or WaitForFirstConsumer, that controls when binding occurs; WaitForFirstConsumer ensures the volume is created in the same zone as the scheduled pod.

Related: StorageClass, Local Persistent Volume, Topology Spread
Local Persistent Volume

A PersistentVolume backed by a disk attached to one specific node, offering low latency and high throughput for Cassandra but sacrificing portability if that node is lost.

Related: VolumeBindingMode, PersistentVolumeClaim, Rack Awareness
Reclaim Policy

The rule controlling what happens to a PersistentVolume after its claim is deleted: Retain keeps data for manual recovery, while Delete removes the backing storage automatically.

Related: StorageClass, PersistentVolumeClaim, Snapshot
PodDisruptionBudget

A policy that limits how many pods of a label selector may be voluntarily evicted at once, protecting Cassandra quorum during node drains and cluster maintenance.

Related: StatefulSet, Rolling Restart, Node Drain
Node Drain

The kubectl operation that evicts pods from a Kubernetes node before maintenance, respecting PodDisruptionBudgets and triggering Cassandra data handoff when a node is removed.

Related: PodDisruptionBudget, Decommission, Rack Awareness
Cassandra Operator

A custom controller that watches custom resources describing a Cassandra cluster and reconciles actual StatefulSets, Services, and configuration to match the declared desired state.

Related: Custom Resource Definition, Reconciliation Loop, CassandraDataCenter
Custom Resource Definition

A Kubernetes API extension that registers a new resource type, such as a Cassandra datacenter or cluster object, so the operator's custom resources can be stored and validated by the API server.

Related: Cassandra Operator, Reconciliation Loop, Admission Webhook
Reconciliation Loop

The continuous control cycle in which an operator compares observed cluster state with the desired spec and issues create, update, or delete calls until they converge.

Related: Cassandra Operator, Custom Resource Definition, Rolling Restart
Admission Webhook

An API server callback that validates or mutates custom resources before persistence, used by operators to reject invalid topology changes or to inject defaults and sidecars.

Related: Custom Resource Definition, Cassandra Operator, Finalizer
Finalizer

A metadata entry that blocks deletion of a custom resource until the controller completes cleanup such as decommissioning nodes or releasing storage, preventing orphaned cloud resources.

Related: Admission Webhook, Decommission, Reconciliation Loop
Seed Node

A contact point listed in cassandra.yaml that new or restarting nodes query to learn cluster topology; seeds should be stable and not all seeds should restart simultaneously.

Related: Gossip Protocol, Headless Service, Bootstrap
Gossip Protocol

Cassandra's peer-to-peer membership and state dissemination mechanism, exchanging node, schema, and load information so every node converges on the same cluster view.

Related: Seed Node, Failure Detector, Snitch
Snitch

A Cassandra component that reports network topology and rack placement to the cluster, informing replica placement and request routing decisions.

Related: Rack Awareness, NetworkTopologyStrategy, Gossip Protocol
Rack Awareness

Configuring Cassandra so replicas land in distinct racks or zones, ensuring a zone failure does not remove all copies of a partition's data.

Related: Snitch, NetworkTopologyStrategy, Topology Spread
NetworkTopologyStrategy

A replication strategy that specifies replica counts per datacenter and, where racks are defined, distributes replicas across racks for fault tolerance.

Related: Rack Awareness, Replication Factor, Consistency Level
Replication Factor

The number of copies of each partition stored across the cluster; it determines durability and the maximum consistency level achievable when nodes are unavailable.

Related: NetworkTopologyStrategy, Consistency Level, Quorum
Consistency Level

A per-query setting specifying how many replicas must acknowledge a read or write before returning success, trading latency and availability against data freshness.

Related: Quorum, Replication Factor, Hinted Handoff
Quorum

A majority of replicas, calculated as replication factor divided by two plus one, that must respond for strong consistency in reads and writes.

Related: Consistency Level, Replication Factor, Hinted Handoff
Partition Key

The first component of a Cassandra primary key that is hashed by the partitioner to determine which node and replicas store a row, driving data distribution.

Related: Clustering Column, Token Ring, Data Model
Clustering Column

A primary key component after the partition key that defines sort order within a partition and enables efficient range slices on disk.

Related: Partition Key, Data Model, Compaction
Token Ring

The hash space from negative to positive values over which Cassandra distributes partitions; each node owns token ranges, and vnodes split ownership into many smaller ranges.

Related: Partition Key, Virtual Node, Bootstrap
Virtual Node

A configurable number of token ranges assigned per physical node, improving data distribution and speeding streaming during bootstrap and decommission.

Related: Token Ring, Bootstrap, Decommission
Bootstrap

The process by which a newly added node streams its assigned token ranges from existing replicas before joining the ring and serving traffic.

Related: Virtual Node, Decommission, Seed Node
Decommission

The controlled removal of a node that streams its data to remaining replicas before leaving the ring, unlike simply deleting a pod.

Related: Bootstrap, Finalizer, Node Drain
Hinted Handoff

A mechanism where a coordinator stores writes destined for an unavailable replica and replays them when that node returns, reducing temporary inconsistency.

Related: Consistency Level, Quorum, Repair
Repair

The anti-entropy process that compares replicas and reconciles divergent data, typically run with nodetool repair or the Reaper tool on a scheduled basis.

Related: Hinted Handoff, Snapshot, Compaction
Compaction

The background merge of SSTables that removes tombstones and obsolete versions, reclaiming disk space and improving read performance.

Related: SSTable, Tombstone, Repair
SSTable

An immutable sorted on-disk file holding Cassandra rows for a token range, created by flushing memtables and later merged by compaction.

Related: Compaction, Commitlog, Snapshot
Commitlog

The append-only durability log written before memtables, replayed on restart to recover writes not yet flushed to SSTables.

Related: SSTable, Snapshot, PersistentVolumeClaim
Snapshot

A hard-linked point-in-time copy of SSTables on a node, used for backups; in Kubernetes it is often paired with volume snapshots for whole-disk capture.

Related: Commitlog, Repair, Reclaim Policy
VolumeSnapshot

A Kubernetes API object that captures a point-in-time copy of a PersistentVolumeClaim through a CSI driver, enabling consistent cluster-wide backups when coordinated across pods.

Related: Snapshot, PersistentVolumeClaim, Restore
Restore

Rebuilding a cluster or keyspace from snapshots and commitlogs, then running repair, while ensuring the restored topology matches the original token ownership.

Related: VolumeSnapshot, Snapshot, Repair
Topology Spread

A Kubernetes scheduling constraint that distributes pods evenly across zones or nodes, aligning Cassandra replica placement with failure domains.

Related: Rack Awareness, VolumeBindingMode, PodDisruptionBudget
Rolling Restart

A controlled sequential restart of Cassandra pods, waiting for each node to rejoin and serve traffic before proceeding, to avoid losing quorum.

Related: PodDisruptionBudget, StatefulSet, Reconciliation Loop
Mutual TLS

Two-way certificate authentication where both client and server present certificates, commonly used between Cassandra nodes and between drivers and the cluster.

Related: Certificate Authority, Authentication, Authorization
Certificate Authority

The entity that issues and signs certificates for nodes and clients; its certificate must be trusted by every participant for TLS handshakes to succeed.

Related: Mutual TLS, cert-manager, Keystore
cert-manager

A Kubernetes controller that automates issuance and renewal of TLS certificates as Secrets, simplifying rotation of Cassandra node and client certificates.

Related: Certificate Authority, Mutual TLS, Keystore
Keystore

A Java file holding a node's private key and certificate chain that Cassandra presents during TLS handshakes; its password is supplied through configuration or a Secret.

Related: Truststore, Mutual TLS, Certificate Authority
Truststore

A Java file containing certificates of trusted peers and authorities that Cassandra uses to verify incoming connections when TLS is enabled.

Related: Keystore, Mutual TLS, Certificate Authority
Authentication

Verifying the identity of a connecting user or node, for example with the PasswordAuthenticator or a pluggable authenticator backed by an external identity system.

Related: Authorization, Role, Mutual TLS
Authorization

Deciding which operations an authenticated identity may perform, governed by permissions granted to roles on keyspaces, tables, or the whole cluster.

Related: Authentication, Role, Superuser
Role

A named security principal that can hold permissions and be granted to users or other roles, supporting hierarchical privilege management in Cassandra.

Related: Authorization, Authentication, Superuser
Superuser

A built-in role with full cluster privileges, created at first startup; its default credentials must be changed and protected immediately in production.

Related: Role, Authorization, Authentication
JMX Exporter

A Java agent that exposes Cassandra MBean metrics over HTTP in Prometheus format, typically scraped through pod annotations and a ServiceMonitor.

Related: Prometheus, ServiceMonitor, Metrics Endpoint
Prometheus

A time-series monitoring system that scrapes metrics endpoints and evaluates alerting rules, commonly deployed alongside the Cassandra operator for observability.

Related: JMX Exporter, ServiceMonitor, Grafana Dashboard
ServiceMonitor

A custom resource from the Prometheus Operator that selects Services and defines scrape intervals and paths for metric collection.

Related: Prometheus, JMX Exporter, Metrics Endpoint
Grafana Dashboard

A visualization layer over Prometheus queries showing Cassandra latency, throughput, compaction backlog, and node health for operators and on-call engineers.

Related: Prometheus, ServiceMonitor, Metrics Endpoint