Skip to content

AxonOps — AI-Native Control Plane for Open Source Data Platforms

Cassandra cassandra.yaml Configuration

The cassandra.yaml file is the primary configuration file for Apache Cassandra. It controls cluster identity, network settings, storage paths, performance tuning, security, and operational behavior.


DocumentDescription
Parameter ReferenceCanonical reference of all cassandra.yaml parameters with types, defaults, version compatibility, and brief descriptions
Configuration GuideIn-depth explanations, best practices, common mistakes, and production recommendations

Installation MethodDefault Path
Package (apt/yum)/etc/cassandra/cassandra.yaml
Tarball$CASSANDRA_HOME/conf/cassandra.yaml
Docker/etc/cassandra/cassandra.yaml
KubernetesTypically mounted as ConfigMap

Cassandra 4.1 introduced human-readable formats for duration, data size, and data rate parameters.

Format TypePre-4.1 Example4.1+ Example
Durationread_request_timeout_in_ms: 5000read_request_timeout: 5s
Data sizecommitlog_segment_size_in_mb: 32commitlog_segment_size: 32MiB
Data ratecompaction_throughput_mb_per_sec: 64compaction_throughput: 64MiB/s

Backward Compatibility

Cassandra 4.1+ accepts both old and new formats. Existing configurations continue to work without modification when upgrading.

See the Parameter Reference for version-specific information on each parameter.


Before starting a production cluster, these settings must be configured:

# Cluster identity (cannot change after data written)
cluster_name: 'MyCluster'
# Network binding
listen_address: <node_ip>
rpc_address: <node_ip> # Or 0.0.0.0 with broadcast_rpc_address set
# Seed nodes for cluster discovery
seed_provider:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
- seeds: "seed1_ip,seed2_ip"
# Topology awareness
endpoint_snitch: GossipingPropertyFileSnitch

Do Not Use Defaults in Production

The default cluster_name: 'Test Cluster' and listen_address: localhost are intended for local development only. Using defaults in production will cause operational issues.


CategoryKey ParametersReference
Cluster Identitycluster_name, num_tokens, allocate_tokens_for_local_replication_factorReference
Networklisten_address, rpc_address, broadcast_address, portsReference
Storagedata_file_directories, commitlog_directory, hints_directoryReference
Performanceconcurrent_reads, concurrent_writes, memtable settingsReference
Commit Logcommitlog_sync, commitlog_segment_size, commitlog_total_spaceReference
Compactioncompaction_throughput, concurrent_compactorsReference
Cachingkey_cache_size, row_cache_size, counter_cache_sizeReference
Timeoutsread_request_timeout, write_request_timeout, range_request_timeoutReference
Hinted Handoffhinted_handoff_enabled, max_hint_window, hinted_handoff_throttleReference
Securityauthenticator, authorizer, encryption optionsReference
Gossipseed_provider, endpoint_snitch, phi_convict_thresholdReference