Azure Databricks:访问防火墙后的Blob存储
我正在从Azure Databricks笔记本读取Azure Blob存储帐户(gen 2)上的文件。这两项服务都在同一地区(西欧)。一切正常,除了在存储帐户前面添加防火墙。我已选择允许“受信任的Microsoft服务”: 但是,现在运行笔记本会出现访问被拒绝错误:Azure Databricks:访问防火墙后的Blob存储,azure,firewall,azure-blob-storage,azure-databricks,Azure,Firewall,Azure Blob Storage,Azure Databricks,我正在从Azure Databricks笔记本读取Azure Blob存储帐户(gen 2)上的文件。这两项服务都在同一地区(西欧)。一切正常,除了在存储帐户前面添加防火墙。我已选择允许“受信任的Microsoft服务”: 但是,现在运行笔记本会出现访问被拒绝错误: com.microsoft.azure.storage.StorageException: This request is not authorized to perform this operation. 我试图直接从Spar
com.microsoft.azure.storage.StorageException: This request is not authorized to perform this operation.
我试图直接从Spark访问存储器,并用dbutils
挂载它,但事情是一样的
我会假设Azure Databricks算作一个受信任的Microsoft服务?此外,我找不到可添加到防火墙规则中的Databricks区域IP范围的可靠信息。是的,Azure Databricks不算作受信任的Microsoft服务,您可以看到存储帐户防火墙支持的IP范围 通过网络,这里有两条建议:
希望这有所帮助。只有在您自己的Azure虚拟网络(vnet)中部署Azure Databricks时,所描述的场景才有效。这样,您就可以使用服务端点,从而可以将您的Databricks vnet添加到Blob存储中。对于默认部署,这是不受支持的,也是不可能的。 有关如何启用vnet注入功能的更多详细信息和说明,请参见以下内容
启用上述异常不起作用,因为Azure DataRicks不在Blob存储的受信任服务列表中。请参阅以下内容,哪些服务在启用异常的情况下仍然可以访问存储帐户。好的,我将接受这个答案。不过,将IP地址白名单似乎需要大量维护,因此我们将了解如何使用VNET。谢谢。如果你想用VNet来做这件事,你需要将Azure数据块部署到你自己的VNet上。