如何解决带serverfarms委托的子网无法部署Azure函数私有端点问题
serverfarms委托的根本作用
Microsoft.Web/serverfarms子网委托是Azure应用服务栈(包含函数应用、Web应用、逻辑应用标准层等资源)VNet集成场景的强制权限配置。
其核心作用是给Azure应用服务控制平面授予对应子网的操作权限,允许平台在该子网内动态创建/销毁函数计算实例对应的网络接口,自动配置适配弹性扩缩容的路由、网络安全规则,没有该委托的前提下,平台没有权限在你的子网内部署计算资源,所以函数部署会直接失败。
私有端点配置冲突的解决方案
该冲突的本质是误用了同一个子网承载两个功能完全独立的VNet相关配置:
- 函数应用的出站VNet集成:需要绑定开启了
Microsoft.Web/serverfarms委托的子网,仅用于函数实例的出站流量调度 - 函数应用的私有端点(入站):不需要也不能配置任何子网委托,仅用于VNet内部资源访问函数应用的入站流量
解决步骤如下:
- 拆分两个独立的子网,不要复用同一子网
- 第一个子网用于函数出站VNet集成:配置
Microsoft.Web/serverfarms委托,子网掩码不大于/26(至少64个可用IP,适配弹性扩缩容的IP需求) - 第二个子网用于私有端点部署:关闭所有子网委托,预留至少2个可用IP即可
- 先完成函数应用的出站VNet集成绑定(如果有出站走VNet的需求),再在第二个子网创建私有端点,不会再触发委托冲突提示
如果你的函数应用是消费计划托管,且没有出站VNet集成的需求,可以直接删除原子网的Microsoft.Web/serverfarms委托,直接在该子网创建私有端点即可,消费计划函数本身不需要绑定委托子网。
内容的提问来源于stack exchange,提问作者kol23
相关产品推荐
相关产品推荐

