B1, B2, B3 - брокеры
- Уменьшите B2, B3 - теперь B1 становится лидером по темам
- Уменьшить B1
- Увеличить В2, В3
- Только после увеличения B1 Мы можем получить сообщение в этой теме
Проблема заключается в том, что без перезапуска клиентский клиент Kafka не пытается подключиться к следующему брокеру, если текущий брокер выходит из строя.
- Проверен на любой обратный вызов для проблемы подключения.
Проверен kakfa-python GitHub, на предмет любых связанных проблем подано
В Github уже был поднят вопрос по этому вопросу.
Код исправление было сделано для этого. Но для меня это все еще не работает
https://github.com/dpkp/kafka-python/issues/140
consumer = KafkaConsumer(
<<topic>>,
group_id=<<group-id>>,
bootstrap_servers=[B1,B2,B3],
auto_offset_reset='latest'
)
for message in consumer:
# message value and key are raw bytes -- decode if necessary!
# e.g., for unicode: `message.value.decode('utf-8')`
print("%s:%d:%d: key=%s value=%s" % (message.topic, message.partition,
message.offset, message.key,
message.value))