После сбоя кафки смещения теряются - PullRequest
0 голосов
/ 17 декабря 2018

Наша система kafka вышла из строя из-за отсутствия свободного места на диске.Потребителями являются загрузочные приложения Spring, использующие API Kafka Streams.Теперь каждое потребительское приложение отображает следующую ошибку:

java.io.FileNotFoundException: /tmp/kafka-streams/908a79bc-92e7-4f9c-a63a-5030cf4d3555/streams.device-identification-parser/0_48/.checkpoint.tmp (No such file or directory)

Это исключение произошло именно после перезапуска сервера kafka.Если мы перезапускаем приложение, служба запускается со смещением 0, чтобы воспроизвести все сообщения из использованной темы.Это фатально.

Мы проверили логи: по каждому разделу нет информации (пример строки, у нас 60 разделов):

TOPIC                               PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                                                                                                            HOST            CLIENT-ID
device-identification.received      0          -               0               -               streams.device-identification-parser-3e81ef05-b9e3-495c-85b3-7e2912f00578-StreamThread-1-consumer-ca723291-3258-46c0-8b23-233bdc1e1191 /XX.X.X.X       streams.device-identification-parser-3e81ef05-b9e3-495c-85b3-7e2912f00578-StreamThread-1-consumer

Может кто-нибудь мне помочь, чтобы восстановить смещениеинформация, что служба запускается с последнего смещения?

1 Ответ

0 голосов
/ 17 декабря 2018

Если это приложение Kafka Streams, возможно, вам удастся сбросить его, что можно сделать с помощью инструмента сброса приложения Confluent: https://docs.confluent.io/current/streams/developer-guide/app-reset-tool.html

...