Ger*_*een 2 sql-server azure vnet azure-function-app azure-private-dns
问题大纲
Azure Function App 集成到 VNET 后无法访问,并且 WEBSITE_VNET_ROUTE_ALL 设置为 1。
这是必需的,以便 Function App 可以安全地连接到 SQL,而无需公开 SQL。
错误:
无法列出功能应用程序键。
来自同一网络中 VM 的 HTTP 请求 (CURL) 失败:504 网关超时
架构图
重现步骤
通过 SSH 连接到 Function App 并使用 nslookup,我们确定与私有链接的连接按预期解析了 SQL 数据库的本地 IP 地址。
将 WEBSITE_VNET_ROUTE_ALL 标志设置为 0,nslookup 将解析 SQL 数据库的公共 IP。
由于 SQL 数据库受到限制并且只能在网络上使用,因此将 WEBSITE_VNET_ROUTE_ALL 设置设为 1 至关重要。
WEBSITE_VNET_ROUTE_ALL = 1
WEBSITE_VNET_ROUTE_ALL = 0
参考
https://docs.microsoft.com/en-us/azure/app-service/web-sites-integrate-with-vnet
这已通过向函数应用子网添加“Microsoft.Storage”服务终结点解决。
当所有流量都发送到 vnet 时,它需要一个到 Storage 的服务端点,以便它可以读取 Function App 配置和函数。
| 归档时间: |
|
| 查看次数: |
1143 次 |
| 最近记录: |