Azure Databricks VNet与VM VNet对等连接创建失败求助(拒绝分配错误)
解决Azure Databricks托管VNet与VM VNet对等连接失败的问题
问题原因
默认由Azure Databricks生成的托管VNet会被系统自动添加拒绝分配(Deny Assignment),禁止直接通过Azure门户或常规Azure资源管理操作修改其网络配置(包括创建对等连接),这就是触发权限拒绝错误的核心原因。
解决方案
必须通过Databricks官方提供的工具(CLI或REST API)创建从ADB托管VNet到VM VNet的反向对等连接,具体步骤如下:
1. 准备必要信息
- 获取VM VNet的资源ID:在Azure门户VM VNet的「属性」页面可找到,格式示例:
/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Network/virtualNetworks/{vm-vnet-name} - 确认ADB工作区的名称与所属资源组
- 确保两个VNet的地址空间无重叠(否则对等连接无法正常生效)
2. 使用Azure Databricks CLI创建对等连接
- 安装并配置CLI:
# 安装Databricks CLI pip install databricks-cli # 配置工作区认证(按提示输入工作区URL和个人访问令牌) databricks configure --token - 执行创建命令:
databricks workspace vnet-peering create \ --name "adb-to-vm-peer" \ --remote-vnet-id "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Network/virtualNetworks/{vm-vnet-name}" \ --allow-vnet-access true \ --allow-forwarded-traffic true \ --allow-gateway-transit false \ --use-remote-gateways false
3. 验证连接状态
执行命令后等待3-5分钟,回到Azure门户查看:
- VM VNet到ADB VNet的对等连接会从「已发起」变为「已连接」
- ADB VNet到VM VNet的对等连接状态会显示为「已连接」
注意事项
- 托管VNet的所有网络配置变更必须通过Databricks工具完成,不能直接通过Azure资源管理器操作
- 若需调整路由规则(如允许网关传输),可使用
databricks workspace vnet-peering update命令修改参数
内容的提问来源于stack exchange,提问作者Dicer
相关产品推荐
相关产品推荐

