#apache-kafka #tls1.2 #apache-beam #google-kubernetes-engine #apache-beam-io
#apache-kafka #tls1.2 #apache-beam #google-kubernetes-engine #apache-beam-io
Вопрос:
Я получил эту ошибку, когда мое приложение Apache beam подключилось к моему кластеру Kafka с включенным ACL. Пожалуйста, помогите мне устранить эту проблему.
Caused by: java.io.IOException: Reader-4: Timeout while initializing partition 'test-1'. Kafka client may not be able to connect to servers.
org.apache.beam.sdk.io.kafka.KafkaUnboundedReader.start(KafkaUnboundedReader.java:128)
org.apache.beam.runners.dataflow.worker.WorkerCustomSources$UnboundedReaderIterator.start(WorkerCustomSources.java:779)
org.apache.beam.runners.dataflow.worker.util.common.worker.ReadOperation$SynchronizedReaderIterator.start(ReadOperation.java:361)
org.apache.beam.runners.dataflow.worker.util.common.worker.ReadOperation.runReadLoop(ReadOperation.java:194)
org.apache.beam.runners.dataflow.worker.util.common.worker.ReadOperation.start(ReadOperation.java:159)
org.apache.beam.runners.dataflow.worker.util.common.worker.MapTaskExecutor.execute(MapTaskExecutor.java:76)
org.apache.beam.runners.dataflow.worker.StreamingDataflowWorker.process(StreamingDataflowWorker.java:1228)
org.apache.beam.runners.dataflow.worker.StreamingDataflowWorker.access$1000(StreamingDataflowWorker.java:143)
org.apache.beam.runners.dataflow.worker.StreamingDataflowWorker$6.run(StreamingDataflowWorker.java:967)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
java.lang.Thread.run(Thread.java:745)
У меня есть кластер Kafka с 3 узлами на GKE. Я создал тему с коэффициентом репликации 3 и раздел 5.
kafka-topics --create --zookeeper zookeeper:2181
--replication-factor 3 --partitions 5 --topic topic
Я установил разрешение на чтение для теста темы для группы потребителей test_consumer_group.
kafka-acls --authorizer-properties zookeeper.connect=zookeeper:2181
--add --allow-principal User:CN=myuser.test.io --consumer
--topic test --group 'test_consumer_group'
В моем приложении Apache beam я установил configuration group.id=test_consumer_group.
Также тестирование с консольным потребителем, и оно также не работает.
$ docker run --rm -v `pwd`:/cert confluentinc/cp-kafka:5.1.0
kafka-console-consumer --bootstrap-server kafka.xx.xx:19092
--topic topic --consumer.config /cert/client-ssl.properties
[2019-03-08 05:43:07,246] WARN [Consumer clientId=consumer-1, groupId=test_consumer_group]
Received unknown topic or partition error in ListOffset request for
partition test-3 (org.apache.kafka.clients.consumer.internals.Fetcher)
Ответ №1:
Похоже, проблема со связью между вашими читателями kafka Kafka client may not be able to connect to servers
Комментарии:
1. Спасибо, похоже, что в конфигурациях сервера есть некоторые ошибки.