我们正尝试通过服务主体创建从Azure Databricks到ADLS Gen2的安装点。服务主体具有适当的资源级别和数据级别访问权限。尽管我们已确认可以通过访问密钥访问ADLS Gen2,但尚未创建安装点。已使用Azure Databricks VNet注入。
安装点失败,并出现非描述性错误。有一个防火墙正在审核来自Databricks的所有流量,因此我们的假设是,挂载点所需的某些内容(OAuth服务或Azure AD API)被阻止。我们已经确认Databricks可以连接到文件系统,但是使用服务主体创建挂载点失败。未知HTTP Data或Azure Databricks必须能够联系哪些服务才能创建安装点。我们相信,解锁那些服务端点将使创建成为可能。目前,仅允许login.microsoftonline.com。
Show 10 entries
答案 0 :(得分:0)
确保您提供了有效的服务主体详细信息,例如:(appId,密码,租户)。
Azure Data Lake Storage Gen2安装配置:
configs = {"fs.azure.account.auth.type": "OAuth",
"fs.azure.account.oauth.provider.type": "org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider",
"fs.azure.account.oauth2.client.id": "<appId>",
"fs.azure.account.oauth2.client.secret": "<password>",
"fs.azure.account.oauth2.client.endpoint": "https://login.microsoftonline.com/<tenant>/oauth2/token",
"fs.azure.createRemoteFileSystemDuringInitialization": "true"}
dbutils.fs.mount(
source = "abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/folder1",
mount_point = "/mnt/flightdata",
extra_configs = configs)
像访问本地文件一样访问文件系统中的文件:
参考: Tutorial: Access Data Lake Storage Gen2 data with Azure Databricks using Spark
希望这会有所帮助。