Apache Spark Databricks连接:无法连接到Azure上的远程群集,命令:“databricks-connect test”停止

tvmytwxo  于 2023-03-23  发布在  Apache
关注(0)|答案(3)|浏览(253)

我尝试设置Databricks Connect,以便能够与Azure上的Workspace上已运行的远程Databricks群集一起工作。当我尝试运行命令时:'databricks-connect test'永远不会结束。
我遵循官方文件。
我已经安装了最新的Anaconda 3.7版本。我已经创建了本地环境:conda create --name dbconnect python=3.5
我已经在5.1版中安装了'databricks-connect',它与Azure Databricks上的群集配置相匹配。

pip install -U databricks-connect==5.1.*

我已经设置了'databricks-connect configure如下:

(base) C:\>databricks-connect configure
    The current configuration is:
    * Databricks Host: ******.azuredatabricks.net
    * Databricks Token: ************************************
    * Cluster ID: ****-******-*******
    * Org ID: ****************
    * Port: 8787

经过上述步骤后,我尝试运行“test”命令进行数据块连接:

databricks-connect test

因此,程序在发出有关MetricsSystem的警告后启动和停止,如下所示:

(dbconnect) C:\>databricks-connect test
    * PySpark is installed at c:\users\miltad\appdata\local\continuum\anaconda3\envs\dbconnect\lib\site-packages\pyspark
    * Checking java version
    java version "1.8.0_181"
    Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
    * Testing scala command
    19/05/31 08:14:26 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
    Setting default log level to "WARN".
    To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
    19/05/31 08:14:34 WARN MetricsSystem: Using default name SparkStatusTracker for source because neither spark.metrics.namespace nor spark.app.id is set.

我希望这个过程应该像官方文档中那样进入下一步:

* Testing scala command
    18/12/10 16:38:44 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
    Setting default log level to "WARN".
    To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
    18/12/10 16:38:50 WARN MetricsSystem: Using default name SparkStatusTracker for source because neither spark.metrics.namespace nor spark.app.id is set.
    18/12/10 16:39:53 WARN SparkServiceRPCClient: Now tracking server state for 5abb7c7e-df8e-4290-947c-c9a38601024e, invalidating prev state
    18/12/10 16:39:59 WARN SparkServiceRPCClient: Syncing 129 files (176036 bytes) took 3003 ms
    Welcome to
          ____              __
         / __/__  ___ _____/ /__
        _\ \/ _ \/ _ `/ __/  '_/
       /___/ .__/\_,_/_/ /_/\_\   version 2.4.0-SNAPSHOT
          /_/

    Using Scala version 2.11.12 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_152)
    Type in expressions to have them evaluated.
    Type :help for more information.

所以我的进程在'WARN MetricsSystem:使用默认名称“Spark状态跟踪器”。
我做错了什么?我应该配置更多的东西吗?

jvidinwx

jvidinwx1#

看起来这个功能在runtimes 5.3或更低版本上不受官方支持。如果在更新运行时时时有限制,我会确保spark conf设置如下:spark.databricks.service.server.enabled true然而,使用旧的运行时,事情仍然可能不稳定。我建议使用运行时5.5或6.1或更高版本。

mzsu5hc0

mzsu5hc02#

很多人似乎在Windows上的test命令中看到了这个问题。但是如果你尝试使用Databricks connect,它可以正常工作。忽略它似乎是安全的。

olhwl3o2

olhwl3o23#

端口8787过去用于Azure,但15001现在用于Azure和AWS。非常旧的集群可能正在使用8787,但所有新集群都使用15001。更改端口使用,
databricks-connect配置
添加相同的配置并将端口更改为15001在上述步骤完成后,我试图运行“测试”命令,
数据砖连接测试
那就成功了

相关问题