无法从应用服务通过 VNet 访问我的 Azure for PostgreSQL 灵活服务器
Unable to access my Azure for PostgreSQL Flexible Server through VNet from App Service
我刚刚为 PostgreSQL 灵活服务器设置了一个新的 Azure,并选择将它放在我的 VNet 上而不是使用 public IP 的白名单。它位于自己的子网上并分配了存储和 .SQL 服务端点。
我还在 Azure App Service 中部署了一个 NodeJS API,它附加到其自己子网上的同一个 VNet。
如果没有额外的 NSG、路由或防火墙规则,因为我读过的内容让我认为我的资源应该能够仅基于上述配置相互通信。
当我通过 SSH 进入我的应用服务容器并尝试迁移我的数据库(使用通过环境变量引入的服务器的 FQDN)时,它立即告诉我找不到该名称。我也尝试 ping 数据库的 FQDN,同样的错误。
我不确定还需要什么才能让这两个连接起来,但我很困惑。任何指导将不胜感激。
您可以按照此 Tutorial: Create an Azure Database for PostgreSQL - Flexible Server with App Services Web App in Virtual network 将 Azure 灵活服务器添加到 VNet。如果你这样做了,你会发现子网委托给 Microsoft.DBforPostgreSQL/flexibleServers
并启用服务端点 Microsoft.Storage
.
此外,在 vnet 与 Web 应用集成的情况下,默认情况下,BGP 路由仅影响您的 RFC1918 目标流量。当 WEBSITE_VNET_ROUTE_ALL
设置为 1
时,应用服务的所有出站流量都会受到 BGP 路由的影响。参考 here.
按照该教程中的步骤并在应用程序设置中添加值为 1
的 WEBSITE_VNET_ROUTE_ALL
后,我可以从应用程序服务容器中的 SSH 工具访问 Azure for PostgreSQL 灵活服务器。
我刚刚为 PostgreSQL 灵活服务器设置了一个新的 Azure,并选择将它放在我的 VNet 上而不是使用 public IP 的白名单。它位于自己的子网上并分配了存储和 .SQL 服务端点。
我还在 Azure App Service 中部署了一个 NodeJS API,它附加到其自己子网上的同一个 VNet。
如果没有额外的 NSG、路由或防火墙规则,因为我读过的内容让我认为我的资源应该能够仅基于上述配置相互通信。
当我通过 SSH 进入我的应用服务容器并尝试迁移我的数据库(使用通过环境变量引入的服务器的 FQDN)时,它立即告诉我找不到该名称。我也尝试 ping 数据库的 FQDN,同样的错误。
我不确定还需要什么才能让这两个连接起来,但我很困惑。任何指导将不胜感激。
您可以按照此 Tutorial: Create an Azure Database for PostgreSQL - Flexible Server with App Services Web App in Virtual network 将 Azure 灵活服务器添加到 VNet。如果你这样做了,你会发现子网委托给 Microsoft.DBforPostgreSQL/flexibleServers
并启用服务端点 Microsoft.Storage
.
此外,在 vnet 与 Web 应用集成的情况下,默认情况下,BGP 路由仅影响您的 RFC1918 目标流量。当 WEBSITE_VNET_ROUTE_ALL
设置为 1
时,应用服务的所有出站流量都会受到 BGP 路由的影响。参考 here.
按照该教程中的步骤并在应用程序设置中添加值为 1
的 WEBSITE_VNET_ROUTE_ALL
后,我可以从应用程序服务容器中的 SSH 工具访问 Azure for PostgreSQL 灵活服务器。