Azure Function VNet集成随机中断



我正在使用Azure Functions与。net 6在s1层应用程序服务计划与区域VNET集成。在我们的场景中,我们执行一些访问On-Prem数据库的SQL查询,乍一看工作得很好。不幸的是,有时虚拟网络连接似乎中断,我们的查询遇到以下错误:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - An attempt was made to access a socket in a way forbidden by its access permissions.) An attempt was made to access a socket in a way forbidden by its access permissions. 

从VNET断开连接并重新连接该函数后,它按预期重新开始工作(我在这里发现了这种方法)

但这似乎只是一个非常糟糕的变通方法。有人知道如何无限期地解决这个问题吗?我已经尝试创建一个新的功能应用程序,但这并没有改变任何东西。

•根据您遇到的错误,可能有一些问题与防火墙或者TCP/IP连接被建立。因此,我建议您检查下面文档链接中提到的所有问题,并验证是否正确地遵循了其中提到的所有实践实例:-

https://learn.microsoft.com/en-us/troubleshoot/sql/connect/network-related-or-instance-specific-error-occurred-while-establishing-connection

•其次,我建议您检查SQL浏览器服务在本地SQL数据库服务器中,检查‘UDP port 1434’是否与TCP 1434一起被列入两个环境之间通信的白名单。. 另外,在执行SQL查询访问本地SQL DB时,请确保正确输入instance name以及端口号。. 此外,当提到端口号时,确保它是preceded by ‘,’ and not ‘:’。 •最后,我建议您启用诊断日志请参考下面的文档链接,这将帮助您找出与SQL DB连接错误的原因。此外,您可以浏览Kudu控制台https://****.scm.azurewebsites.net/ (enter your website name instead of ****)。您应该能够在调试控制台下找到日志文件。请检查是否有故障日志:-

https://learn.microsoft.com/en-us/azure/app-service/troubleshoot-diagnostic-logs: ~:文本= % 20启用% 20台应用% 20日志记录% 20,本身% 20 20小时在% % 20 2012%。

https://github.com/projectkudu/kudu/wiki/Investigating-issues

注意:-请检查您在功能应用程序中使用的API URL connection string是否被正确替换,并排除您的连接变量彻底。

最新更新