Gymterview
middle

Какие настройки брокера Kafka существуют?

Настройки брокера определяют поведение репликации, хранения, производительности и безопасности.

Репликация и консистентность

Настройка Описание Пример
min.insync.replicas Минимальное количество синхронизированных реплик для подтверждения записи min.insync.replicas=2
unclean.leader.election.enable Разрешает выбор лидера из неактуальных реплик, если нет синхронизированных false

Логирование и хранение данных

Настройка Описание Пример
log.dirs Директория для хранения логов партиций /var/lib/kafka/logs
log.retention.hours Максимальное время хранения данных в логах 168 (7 дней)
log.segment.bytes Максимальный размер сегмента лога 1073741824 (1 GB)

Производительность и задержки

Настройка Описание Пример
num.network.threads Количество потоков для обработки сетевых запросов 3
num.io.threads Количество потоков для ввода-вывода 8
socket.send.buffer.bytes Размер буфера для отправки данных по сети 102400

Управление сообщениями

Настройка Описание Пример
message.max.bytes Максимальный размер сообщения 1048576 (1 MB)
replica.fetch.max.bytes Максимальный размер данных для запроса реплики 1048576 (1 MB)

Безопасность

Настройка Описание Пример
ssl.keystore.location Путь к хранилищу ключей SSL /var/private/ssl/kafka.keystore.jks
ssl.truststore.location Путь к хранилищу доверенных сертификатов /var/private/ssl/kafka.truststore.jks

На собеседовании: обратите внимание на unclean.leader.election.enable=false — это критически важная настройка. Если включить её (true), то при потере всех ISR-реплик лидером может стать отставший брокер, что приведёт к потере данных.