我正在从 Azure Databricks 笔记本读取 Azure Blob 存储帐户(第 2 代)上的文件。两项服务均位于同一地区(西欧)。一切正常,除非我在存储帐户前面添加防火墙。我选择允许“受信任的 Microsoft 服务”:
但是,现在运行笔记本会出现访问被拒绝错误:
com.microsoft.azure.storage.StorageException: This request is not authorized to perform this operation.
我尝试直接从 Spark 访问存储并通过安装它dbutils
,但同样的事情。
我会假设 Azure Databricks 算作值得信赖的 Microsoft 服务吗?此外,我找不到有关可以添加到防火墙规则中的 Databricks 区域 IP 范围的可靠信息。
是的,Azure Databricks 不算受信任的 Microsoft 服务,您可以看到支持的值得信赖的微软服务 https://learn.microsoft.com/en-us/azure/storage/common/storage-network-security#trusted-microsoft-services使用存储帐户防火墙。
根据网络,有两个建议:
-
找出Azure 数据中心 IP 地址 https://www.microsoft.com/en-us/download/details.aspx?id=56519 (原始已弃用的 URL https://www.microsoft.com/en-sg/download/details.aspx?id=41653)并确定 Azure Databricks 所在区域的范围。将存储帐户防火墙中的 IP 列表列入白名单。
-
在 Azure 虚拟网络中部署 Azure Databricks(预览版) https://docs.azuredatabricks.net/administration-guide/cloud-configurations/azure/vnet-inject.html然后将存储帐户的防火墙中的 VNet 地址范围列入白名单。你可以参考配置 Azure 存储防火墙和虚拟网络。 https://learn.microsoft.com/en-us/azure/storage/common/storage-network-security此外,您还可以使用 NSG 来限制来自此 Azure VNet 的入站和出站流量。注意:您需要部署Azure Databricks您自己的虚拟网络.
希望这可以帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)