Azure Databricks:在没有 Internet 访问的情况下在虚拟网络下导入 PyPI 库

Posted

技术标签:

【中文标题】Azure Databricks:在没有 Internet 访问的情况下在虚拟网络下导入 PyPI 库【英文标题】:Azure Databricks: Import PyPI libraries under Virtual Network wthout internet access 【发布时间】:2019-06-21 09:37:48 【问题描述】:

我们有一个带有虚拟网络的 Azure Databricks 集群和一个网络安全组,它只允许集群节点之间的连接而不是互联网访问。

当我们尝试通过 PyPI 导入库并启动 de cluster 时,集群给出此错误:

警告:重试(重试(总计=4,连接=无,读取=无, redirect=None, status=None)) 连接中断后 'NewConnectionError(': 建立新连接失败: [Errno 101] 网络不可达',)': /simple/azure-datalake-store/

有趣的是,如果您尝试导入 Maven 库,则可以正常工作。

任何人都知道如何解决这个问题。

谢谢。

【问题讨论】:

【参考方案1】:

Log4j 附带数据块,因此它可能在本地缓存中找到它。如果你在 Maven 上随机尝试一些东西,它应该会失败。

至于 pypi - 你不能直接连接,所以你不能以这种方式添加库。而是手动将库下载到桌面并从 ui 手动安装。

您需要手动将库文件上传到 dbfs。使用 cli 或 powershell 来执行此操作。然后在工作区中使用添加 > 库选项添加库。链接到您的文件位置。

【讨论】:

1 - 使用 maven 我已经尝试过使用 apache poi 库,它从未被使用过并且它的工作原理!!! 你必须能上网 如果我尝试通过门户手动上传,它会发生相同的情况,maven 工作和 PiPY 会返回相同的错误:网络无法访问。没有互联网接入。难以置信【参考方案2】:

我们在网络安全组中打开了 IP 范围 151.101.0.0/16 和端口 443,并且 PYPI 库可以正常工作

【讨论】:

以上是关于Azure Databricks:在没有 Internet 访问的情况下在虚拟网络下导入 PyPI 库的主要内容,如果未能解决你的问题,请参考以下文章

Azure Databricks:在没有 Internet 访问的情况下在虚拟网络下导入 PyPI 库

如何获取 Azure Databricks 笔记本运行详细信息

在 Azure Key Vault 支持的 Databricks 中创建秘密范围失败

将 DataBricks 连接到 Azure Blob 存储

如何从 Azure Databricks 在 Azure Blob 中创建一个空文件夹

带有 python 的 Azure Databricks dbfs