微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每当我在dockercontainer中获得Spark工作时,我都会断开Bootstrap代理localhost:9092id:-1 rack:null的连接

如何解决每当我在dockercontainer中获得Spark工作时,我都会断开Bootstrap代理localhost:9092id:-1 rack:null的连接

我得到的错误是:-

20/11/02 13:34:51 WARN NetworkClient: [Consumer clientId=consumer-spark-kafka-source-366ac503-c5a4-4338-869c-84786983aab3--188679505-driver-0-1,groupId=spark-kafka-source-366ac503-c5a4-4338-869c-84786983aab3--188679505-driver-0] Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected

我的docker-compose.yml文件

 version: "3"
services:
  zookeeper:
    image: wurstmeister/zookeeper
    container_name: zookeeper
    ports:
    - 2181:2181

  kafka:
    image: wurstmeister/kafka
    container_name: kafka
    ports:
    - 9092:9092
    
    environment:
      KAFKA_LISTENERS: PLAINTEXT://:9092
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
      KAFKA_broKER_ID: 1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_CREATE_TOPICS: "kafkatutorial:1:1"
      ALLOW_PLAINTEXT_LISTENER: "yes"
      SSL: localhost:9092
    expose:
     - 9092
      
  spark:
   build:
    dockerfile: DockerFileSpark
    context: .

   
   environment:
      - SPARK_MODE=master
      - SPARK_RPC_AUTHENTICATION_ENABLED=no
      - SPARK_RPC_ENCRYPTION_ENABLED=no
      - SPARK_LOCAL_STORAGE_ENCRYPTION_ENABLED=no
      - SPARK_SSL_ENABLED=no
   
   ports:
      - '8080:8080'
   links:
    - kafka
   
   depends_on:
    - zookeeper
    - kafka
    

解决方法

  1. SSL: localhost:9092对于kafka容器不是有效的环境变量;您需要在两个侦听器变量中设置SSL,并向图像添加ssl证书

  2. 不清楚您的Spark代码在哪里运行,但是在容器中,localhost永远无法连接到外部服务。删除您Yaml中的links,然后使用代码连接到kafka:9092

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。