【问题标题】:Databricks zookeeper not startingDatabricks zookeeper 未启动
【发布时间】:2020-04-15 21:07:12
【问题描述】:

当 Zookeeper 使用以下命令启动时,它会在以下步骤中挂起,并且永远不会以语句 'zookeeper started' 结束

INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)

由于此步骤已挂起,因此不会在 Databricks 中执行进一步的步骤,因为它们将显示“等待处理”

步骤:

  1. 在 Databricks 中启动集群
  2. 创建一个笔记本(我同时使用了 python 和 scala,得到了相同的结果)
  3. 从这里安装 Kafka - %sh wget http://mirror.reverse.net/pub/apache/kafka/2.4.0/kafka_2.12-2.4.0.tgz

  4. %sh tar -xzf kafka_2.12-2.4.0.tgz

  5. %sh /databricks/driver/kafka_2.12-2.4.0/bin/zookeeper-server-start.sh
    /databricks/driver/kafka_2.12-2.4.0/config/zookeeper.properties

我需要添加任何库吗?你能指出如何让这个移动吗?

【问题讨论】:

    标签: apache-zookeeper databricks


    【解决方案1】:

    两件事。 如果您运行%sh <shell command> 并且该命令需要某种输入,那么它肯定会“挂起”。您必须从集群断开并重新连接笔记本。提供命令行参数以防止安装询问问题(例如“无头”模式)

    其次,如果您想从 Kafka 读取数据,可以使用 Databricks 的“数据”按钮。转到 Data -> [Add Data] -> [Other Data Sources] -> [Connector](选择 Kafka)为您生成一个 notebook。填写模板。 生成的代码如下所示:

    import org.apache.spark.sql.functions.{get_json_object, json_tuple}
    
    var streamingInputDF = 
      spark.readStream
        .format("kafka")
        .option("kafka.bootstrap.servers", "<server:ip")
        .option("subscribe", "topic1")     
        .option("startingOffsets", "latest")  
        .option("minPartitions", "10")  
        .option("failOnDataLoss", "true")
        .load()
    

    Databricks 随附已安装的驱动程序。我在 AWS 云上的 AWS MKS 上成功使用了它。

    【讨论】:

      猜你喜欢
      • 2014-01-14
      • 2014-09-27
      • 2023-03-21
      • 2018-07-24
      • 1970-01-01
      • 2015-09-15
      • 2014-12-18
      • 2018-04-12
      • 1970-01-01
      相关资源
      最近更新 更多