【发布时间】:2021-05-10 16:49:35
【问题描述】:
我正在尝试在 Databricks 中安装 Azure Data Lake Gen 2,但出现以下错误。
java.lang.NullPointerException: authEndpoint
我使用的代码如下所示
configs = {
"fs.azure.account.auth.type": "OAuth",
"fs.azure.account.auth.provider.type": "org.apache.hadoop.fs.azurebfs.ClientCredsTokenProvider",
"fs.azure.account.auth2.client.id": "<client-id>",
"fs.azure.account.auth2.client.secret": dbutils.secrets.get(scope = "scope1", key = "kvsecretfordbricks"),
"dfs.adls.oauth2.refresh.url": "https://login.microsoftonline.com/<tenant-id>/oauth2/token"}
dbutils.fs.mount(
source = "abfss://starter1@newresourcegroupadcadls.dfs.core.windows.net/",
mount_point = "/mnt/demo",
extra_configs = configs)
下面给出了完整的错误
----------------------------------- ---------------------------- ExecutionError Traceback(最近调用 最后)在 9 来源 =“abfss://starter1@newresourcegroupadcadls.dfs.core.windows.net/”, 10 mount_point = "/mnt/demo", ---> 11 个额外配置 = 配置)
/local_disk0/tmp/1612619970782-0/dbutils.py f_with_exception_handling(*args, **kwargs) 312 exc.上下文 = 无 313 exc.原因 = 无 --> 314 提高 exc 第315章 316
ExecutionError:调用 o271.mount 时出错。 : java.lang.NullPointerException:authEndpoint 在 shaded.databricks.v20180920_b33d810.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:204) 在 shaded.databricks.v20180920_b33d810.org.apache.hadoop.fs.azurebfs.oauth2.AzureADAuthenticator.getTokenUsingClientCreds(AzureADAuthenticator.java:84) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.verifyAzureOAuth(DBUtilsCore.scala:477) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.verifyAzureFileSystem(DBUtilsCore.scala:488) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.mount(DBUtilsCore.scala:446) 在 sun.reflect.GeneratedMethodAccessor292.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) 在 py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:380) 在 py4j.Gateway.invoke(Gateway.java:295) 在 py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132) 在 py4j.commands.CallCommand.execute(CallCommand.java:79) 在 py4j.GatewayConnection.run(GatewayConnection.java:251) 在 java.lang.Thread.run(Thread.java:748)
任何帮助将不胜感激
当我跑步时
dbutils.fs.unmount("/mnt")
没有以“/mnt”开头的挂载点
--
更新
将dfs.adls.oauth2.refresh.url 更新为fs.azure.account.oauth2.client.endpoint 后的附加错误消息
ExecutionError Traceback(最近调用 最后)在 9 来源 =“abfss://starter1@newresourcegroupadcadls.dfs.core.windows.net/”, 10 mount_point = "/mnt/demo", ---> 11 个额外配置 = 配置)
/local_disk0/tmp/1612858508533-0/dbutils.py 在 f_with_exception_handling(*args, **kwargs) 312 exc.上下文 = 无 313 exc.原因 = 无 --> 314 提高 exc 第315章 316
ExecutionError:调用 o275.mount 时出错。 : java.lang.NullPointerException:clientId 在 shaded.databricks.v20180920_b33d810.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:204) 在 shaded.databricks.v20180920_b33d810.org.apache.hadoop.fs.azurebfs.oauth2.AzureADAuthenticator.getTokenUsingClientCreds(AzureADAuthenticator.java:85) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.verifyAzureOAuth(DBUtilsCore.scala:477) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.verifyAzureFileSystem(DBUtilsCore.scala:488) 在 com.databricks.backend.daemon.dbutils.DBUtilsCore.mount(DBUtilsCore.scala:446) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) 在 py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:380) 在 py4j.Gateway.invoke(Gateway.java:295) 在 py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132) 在 py4j.commands.CallCommand.execute(CallCommand.java:79) 在 py4j.GatewayConnection.run(GatewayConnection.java:251) 在 java.lang.Thread.run(Thread.java:748)
【问题讨论】:
标签: azure azure-active-directory databricks azure-data-lake