CCAAK key terms
CCAAK · Get comfortable with the vocabulary.
- broker
- Related: controller, partition, bootstrap server
A single Kafka server process that stores partitions, serves producer and consumer requests, and participates in cluster coordination. Each broker is identified by a unique integer id set in its configuration.
- controller
- Related: KRaft, broker, ZooKeeper
The broker elected to manage cluster metadata: assigning partition leaders and replicas, handling broker failures, and propagating changes. In KRaft mode the controller role is separated from the broker role.
- KRaft
- Related: controller, ZooKeeper, metadata log
Kafka's built-in consensus protocol that replaces ZooKeeper for metadata management. Controller quorum members replicate a metadata log, and brokers fetch metadata from the quorum leader.
- ZooKeeper
- Related: KRaft, controller
The external coordination service used by older Kafka releases to store cluster metadata, controller election state, and configuration. Removed in Kafka 4.0 in favor of KRaft.
- partition
- Related: replica, offset, topic
An ordered, immutable log shard of a topic. Partitions provide parallelism and are the unit of replication and leader election; ordering is guaranteed only within a single partition.
- replica
- Related: leader, follower, in-sync replica
A copy of a partition stored on a broker. One replica is the leader serving reads and writes; others are followers that fetch from the leader to stay in sync.
- leader
- Related: follower, replica, preferred leader
The replica that currently handles all produce and fetch requests for a partition. Clients are routed to the leader, and followers replicate from it.
- follower
- Related: leader, in-sync replica
A replica that does not serve clients but continuously fetches from the partition leader to remain caught up. A follower becomes leader if the current leader fails.
- in-sync replica
- Related: high watermark, min.insync.replicas, replica
A replica that has fetched up to the leader's high watermark within the configured lag threshold. Only in-sync replicas are eligible for leader election when acks=all is required.
- high watermark
- Related: in-sync replica, offset, log end offset
The offset up to which all in-sync replicas have replicated a partition's data. Consumers can only read messages below the high watermark, which bounds visible data.
- log end offset
- Related: high watermark, replica lag
The offset of the next message that would be appended to a partition log on a given replica. Comparing log end offsets across replicas reveals replication lag.
- offset
- Related: consumer group, __consumer_offsets
A monotonically increasing integer that uniquely identifies a record's position within a partition. Consumers commit offsets to track their progress.
- topic
- Related: partition, replication factor
A named logical stream of records, divided into partitions and replicated across brokers. Producers write to topics and consumers subscribe to them.
- replication factor
- Related: replica, min.insync.replicas
The number of copies of each partition maintained across the cluster. It must not exceed the broker count, and a value of three is typical for production durability.
- min.insync.replicas
- Related: in-sync replica, acks
A topic or broker setting specifying the minimum number of in-sync replicas that must acknowledge a write when the producer uses acks=all. Otherwise the produce fails with NotEnoughReplicas.
- acks
- Related: min.insync.replicas, idempotent producer
A producer setting controlling how many acknowledgments are required before a write succeeds: 0 (none), 1 (leader only), or all (all in-sync replicas). Higher values increase durability but add latency.
- idempotent producer
- Related: acks, transactional producer
A producer mode that attaches sequence numbers and a producer id so the broker deduplicates retries, preventing duplicate records from network retries. Enabled with enable.idempotence=true.
- transactional producer
- Related: idempotent producer, transaction coordinator
A producer that writes atomically across multiple partitions using a transaction id, coordinated by the transaction coordinator. Consumers with read_committed isolation see only committed records.
- transaction coordinator
- Related: transactional producer, __transaction_state
A broker component that manages transactional producer state, including transaction markers and partition assignments for a given transactional.id, so writes commit or abort atomically.
- consumer group
- Related: group coordinator, rebalance, offset
A set of consumers that jointly consume a topic, with each partition assigned to exactly one member at a time. Group membership and offsets are tracked by the group coordinator.
- group coordinator
- Related: consumer group, __consumer_offsets
The broker responsible for a consumer group's membership, heartbeats, and offset commits. It is determined by hashing the group id against the __consumer_offsets partition count.
- rebalance
- Related: consumer group, static membership
The process of redistributing partition assignments among consumer group members when membership changes or subscriptions are altered. During a rebalance, consumption pauses briefly.
- static membership
- Related: rebalance, consumer group
A consumer configuration using group.instance.id that lets a restarted consumer rejoin without triggering a rebalance within the session timeout, reducing churn in rolling deployments.
- bootstrap server
- Related: broker, advertised.listeners
The broker address list a client contacts first to discover cluster metadata. Only one reachable address is needed; the client then learns all brokers and partition leaders.
- listener
- Related: advertised.listeners, bootstrap server
A named network endpoint a broker binds to, combining protocol (PLAINTEXT, SSL, SASL_PLAINTEXT, SASL_SSL), host, and port. Clients connect using the listener name in their security protocol.
- advertised.listeners
- Related: listener, bootstrap server
The listener addresses a broker publishes to clients in metadata responses. Misconfigured values cause clients to receive unreachable addresses, a common cause of connection timeouts.
- log.dirs
- Related: log segment, log retention
The broker configuration listing directories where partition log segments are stored. Multiple directories on separate disks improve throughput and allow log data to span volumes.
- log segment
- Related: log.dirs, log compaction, log retention
A file group holding a contiguous range of a partition's records, rolled when size or time thresholds are reached. Segments are the unit of retention deletion and compaction.
- log retention
- Related: log segment, log compaction
Policy controlling how long or how much log data is kept, set by retention.ms and retention.bytes at topic or broker level. Expired segments are deleted in the background.
- log compaction
- Related: log retention, log segment
A cleanup policy that retains at least the latest record for each key within a partition, discarding older values. Used for changelog and state-restoration topics.
- partition reassignment
- Related: replica, preferred leader, throttling
The administrative operation of moving partition replicas to different brokers, typically to rebalance load after adding brokers. It is executed via kafka-reassign-partitions and monitored until completion.
- preferred leader
- Related: leader, partition reassignment
The replica listed first in a partition's assignment, which should ideally be leader. The preferred leader election moves leadership back to it to balance load.
- unclean leader election
- Related: in-sync replica, leader
Allowing an out-of-sync replica to become leader when no in-sync replica is available, risking data loss. Controlled by unclean.leader.election.enable, normally disabled.
- throttling
- Related: partition reassignment, replica lag
Broker or client limits on replication and client byte rates, expressed as bytes per second. Used during reassignment and catch-up to avoid saturating network or disk.
- replica lag
- Related: log end offset, in-sync replica, throttling
The difference between a leader's log end offset and a follower's, indicating how far behind replication is. Sustained lag shrinks the in-sync replica set and threatens durability.
- JMX metric
- Related: UnderReplicatedPartitions, replica lag
A measurement exposed by Kafka through Java Management Extensions, such as BytesInPerSec or UnderReplicatedPartitions. Monitoring tools scrape these MBeans to detect broker health issues.
- UnderReplicatedPartitions
- Related: JMX metric, in-sync replica, replica lag
A broker-level JMX gauge counting partitions whose in-sync replica count is below the assigned replica count. A sustained non-zero value signals broker or network trouble.
- __consumer_offsets
- Related: consumer group, group coordinator, offset
The internal compacted topic storing committed offsets per consumer group. Its partition count determines group coordinator placement and should not be changed casually.
- ACL
- Related: principal, SASL
An access control entry granting or denying a principal operations on a resource such as a topic or group. ACLs are enforced when an authorizer is configured on the broker.
- SASL
- Related: ACL, principal, listener
The authentication framework Kafka supports for client and inter-broker connections, with mechanisms including PLAIN, SCRAM, and GSSAPI. It is typically layered under TLS.
- principal
- Related: ACL, SASL
The identity asserted by an authenticated client, used when evaluating ACLs. For SASL/PLAIN it is the configured username; for mTLS it derives from the certificate subject.