A single Kafka server is called a broker. Usually, several Kafka brokers operate as one Kafka cluster. The cluster is controlled by one of the brokers, called the controller, which is responsible for administrative actions such as assigning partitions to other brokers and monitoring for failures. The controller is elected from the live members of the cluster.
A partition can be assigned to more than one broker, in which case the partition is replicated across the assigned brokers. This creates redundancy in case one of the brokers fails and allows another broker to take its place without disrupting access to the partition for the users. Within a cluster, a single broker owns a partition and is said to be the leader. All the other partition-replicating brokers are called followers. Every producer and consumer interacting with the partition must connect to the leader for that partition.
Messages in Kafka are stored durably for a configurable retention period. Messages can be stored for a certain number of days or up until the topic reaches a specific size in bytes, when the messages are expired and deleted.
A broker is responsible for receiving messages from producers and committing them to disk. Similarly, brokers also receive requests from readers and respond with messages fetched from partitions.