раздел kafka имеет много сегментов журнала - PullRequest
0 голосов
/ 20 сентября 2018

В одной теме 20 разделов, почти у каждого есть более 20 000 файлов сегментов журнала, большинство из которых созданы несколько месяцев назад.Даже после очень короткой настройки retention.ms сегменты не удаляются.В то время как другие темы могут перерабатываться в обычном режиме.

Мне интересно, в чем проблема и как ее решить.Потому что я беспокоюсь о том, что общее количество сегментов будет увеличиваться больше, чем у OS vm.max_map_count, что повредит сам процесс kafka.Следующее изображение является описанием аномальной темы.

enter image description here

1 Ответ

0 голосов
/ 20 сентября 2018

Не уверен, в чем конкретно проблема, но нужно учесть некоторые вещи:

  • Брокер против специфичных для темы конфигов. Убедитесь, что ваша тема действительно имеетКонфиги, которые, по вашему мнению, имеются, и не наследуют их из настроек брокера.

  • Конфиги, связанные с retention. Как упоминал Джирогос Мириантос, вы можетепосмотрите на log.retention.check.interval.ms и log.cleanup.policy.Я бы также посмотрел на настройки, относящиеся к рулону, например log.roll.hours.Я полагаю, что в некоторых случаях Kafka не удалит сегмент, пока его раздел не переместится, даже если сегмент старый.И прокрутка выполняется следующим образом:

Время прокрутки журнала больше не зависит от времени создания сегмента журнала.Вместо этого он теперь основан на отметке времени в сообщениях.Более конкретно.если отметка времени первого сообщения в сегменте равна T, журнал будет развернут, когда отметка времени нового сообщения будет больше или равна T + log.roll.ms (http://kafka.apache.org/20/documentation.html)

Так что не забудьте учесть отметки времени записи, а не только возраст файлов сегмента.

Наконец:

  • Какую версию Кафки вы используете?
  • Есть ли у васвы внимательно посмотрели журналы брокеров? В журналах брокеров я решил все такие проблемы, с которыми мне приходилось сталкиваться.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...