1. Confluent Documentation, "Kafka Topics": "Replication is at the core of Kafka's fault tolerance. The replication factor specifies how many copies of the data are made... For a replication factor of N, Kafka can tolerate up to N-1 server failures without losing any committed messages. A typical replication factor is 3."
Source: Confluent Documentation, "Manage Topics" section.
2. Apache Kafka Documentation, "3.4 Replication": "Replication is at the heart of Kafka's fault-tolerance... We recommend using a replication factor of 3, which allows for tolerating 2 broker failures."
Source: Apache Kafka 3.7 Documentation, Section 3.4 "Replication".
3. Confluent Documentation, "Producer Configs": The documentation for min.insync.replicas states, "When set to 1, the producer will get an acknowledgement as soon as the leader has written the message to its local log." This highlights the risk associated with this setting, which contradicts the goal of high availability.
Source: Confluent Documentation, "Producer Configuration Settings".