小编dmf*_*fay的帖子

组中的一个 Kafka 消费者始终拒绝协调器,但仅当 Spark 和 Kafka 都在 EC2 中时

我有一个 Java 应用程序尝试使用 EC2 中的 Kafka 2.5.1 集群中的主题,使用spark-streaming-kafka-0-10_2.11. 它仅适用于 Spark 集群或AWS之外的独立安装:当 Spark 也托管在 EC2 中时,Kafka 消费者组永远不会完全初始化。对于总共三个主题,只有两个消费者曾经连接过,而第三个则反复拒绝组协调器“不可用或无效”。

消费者失败的总是相同的第三个主题,但第二个和第三个主题配置相同并且都为空;它们之间的唯一区别是名称。删除并重新创建第三个主题不会改变任何内容。忽略应用程序代码中的主题 #3(前两个不容易解脱)会导致成功启动。

所有不同的 Sparks 都是 2.4.5 版本,Google Guava JAR 从发布的 14.0.1 更新到 19.0,但没有特殊配置。

Kafka 是一个三节点 EC2 集群,每个节点托管一个代理、一个 Zookeeper 实例和一个 Spark 工作线程。一切都在说话,从其他一切都可以ping通。server.properties配置listeners内部DNS名称,而advertised.listeners外部。

listeners=PLAINTEXT://ip-abc-def-ghi-jkl.region.compute.internal:9092
advertised.listeners=PLAINTEXT://ec2-mno-pqr-stu-vwx.region.compute.amazonaws.com:9092
Run Code Online (Sandbox Code Playgroud)

从 EC2 内部启动失败的 Spark 应用程序:

2020-10-08/21:09:32.694/UTC org.apache.kafka.clients.consumer.ConsumerConfig INFO ConsumerConfig values:
        auto.commit.interval.ms = 5000
        auto.offset.reset = latest
        bootstrap.servers = [ip-(broker 1 private dns).region.compute.internal:9092]
        check.crcs = true
        client.id =
        connections.max.idle.ms = …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 apache-kafka apache-spark spark-streaming

6
推荐指数
1
解决办法
563
查看次数