Kafka Connect Распределенный режим координатор группы недоступен
Я пробовал это в течение двух недель, я запускаю кластер Кафки на отдельных машинах, чем мои узлы подключения. Я не могу правильно запустить connect. Я могу читать и писать Кафке без проблем. Zookeeper, кажется, работает нормально.
Я запускаю connect:
$ bin/connect-distributed connect-distributed.properties
Connect продолжает цикл через эту ошибку:
[2018-08-21 15:45:12,161] INFO [Worker clientId=c1, groupId=connect-cluster] Discovered group coordinator 172.25.1.2:9092 (id: 2147483645 rack: null) (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:677)
[2018-08-21 15:45:12,163] INFO [Worker clientId=c1, groupId=connect-cluster] (Re-)joining group (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:509)
[2018-08-21 15:45:12,165] INFO [Worker clientId=c1, groupId=connect-cluster] Group coordinator 172.25.1.2:9092 (id: 2147483645 rack: null) is unavailable or invalid, will attempt rediscovery (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:729)
[2018-08-21 15:45:12,266] INFO [Worker clientId=c1, groupId=connect-cluster] Discovered group coordinator 172.25.40.219:9092 (id: 2147483645 rack: null) (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:677)
[2018-08-21 15:45:12,267] INFO [Worker clientId=c1, groupId=connect-cluster] Group coordinator 172.25.1.2:9092 (id: 2147483645 rack: null) is unavailable or invalid, will attempt rediscovery (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:729)
вот что мой connect-distributed.свойства выглядят так:
bootstrap.servers=172.25.1.2:9092,172.25.1.3:9092,172.25.1.4:9092
group.id=connect-cluster
key.converter=org.apache.kafka.connect.json.JsonConverter
value.converter=org.apache.kafka.connect.json.JsonConverter
key.converter.schemas.enable=false
value.converter.schemas.enable=false
offset.storage.topic=connect-offsets
offset.storage.replication.factor=3
offset.storage.partitions=3
config.storage.topic=connect-configs
config.storage.replication.factor=3
status.storage.topic=connect-status
status.storage.replication.factor=3
status.storage.partitions=3
offset.flush.interval.ms=10000
rest.host.name=172.25.1.5
rest.port=8083
heartbeat.interval.ms=3000
session.timeout.ms=30000
security.protocol=PLAINTEXT
client.id=c1
plugin.path=/usr/share/java
__потребитель_взаимозачетов тему выглядит вот так:
/opt/kafka/bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic __consumer_offsets
Topic:__consumer_offsets PartitionCount:50 ReplicationFactor:3 Configs:segment.bytes=104857600,cleanup.policy=compact,compression.type=producer
Topic: __consumer_offsets Partition: 0 Leader: 2 Replicas: 1,2,3 Isr: 3,2
Topic: __consumer_offsets Partition: 1 Leader: 2 Replicas: 1,2,3 Isr: 3,2
Topic: __consumer_offsets Partition: 2 Leader: 2 Replicas: 1,2,3 Isr: 3,2
Topic: __consumer_offsets Partition: 3 Leader: 1 Replicas: 1 Isr: 1
Topic: __consumer_offsets Partition: 4 Leader: 2 Replicas: 2 Isr: 2.... etc
2 ответов
после написания разъема в Go я столкнулся с той же проблемой. Я был вынужден решить сам.
когда соединитель подключается к Кафке, он автоматически записывает темы и __offset_topics
. Когда соединитель аварийно завершает работу, он оставляет след себя в этих таблицах в качестве координатора. При запуске нового соединителя он находит запись в таблице и пытается связаться с координатором. Координатор не отвечает и разъем не завод.
вы можете исправить это одним из двух способов, удалить все разделы (connect-configs
, connect-offsets
, connect-status
, __offset_topics
) и перезапустите кластер. Другой метод-удалить координатора из тем, которые я в настоящее время не уверен, как выполнять.