已添加出站IP仍遭MongoDB Atlas拦截的Azure Web应用问题
Azure Web应用连接MongoDB Atlas失败问题
复现步骤
- 访问
portal.azure.com,选择目标Web应用服务,进入**Properties(属性)页面,复制Outbound IP addresses(出站IP地址)**下的所有地址 - 登录MongoDB Atlas控制台,进入**Network Access(网络访问)**模块,点击
+ Add IP Address(添加IP地址),将Web应用的所有出站IP及本地测试用的个人电脑IP添加至白名单
预期行为
Azure Web应用可正常向MongoDB Atlas发起请求
实际行为
正常场景
- 本地环境可正常连接MongoDB Atlas
- MongoDB Atlas的**Network Access(网络访问)**设置为「允许来自任意位置的访问」时,Azure Web应用可正常发起请求
异常场景
- MongoDB Atlas的**Network Access(网络访问)**关闭「允许来自任意位置的访问」时,Azure Web应用无法发起请求,日志流中出现超时信息并导致应用崩溃,错误日志如下:
/home/site/wwwroot/node_modules/mongodb/lib/sdam/topology.js:543 drainWaitQueue(topology[kWaitQueue], new error_1.MongoTopologyClosedError()); MongoTopologyClosedError: Topology is closed at processWaitQueue (/home/site/wwwroot/node_modules/mongodb/lib/sdam/topology.js:543:46) at Topology.selectServer (/home/site/wwwroot/node_modules/mongodb/lib/sdam/topology.js:290:9) at Topology.<anonymous> (/home/site/wwwroot/node_modules/mongodb/lib/sdam/topology.js:43:94) at node:internal/util:364:7 at new Promise (<anonymous>) at Topology.selectServerAsync (node:internal/util:350:12) at executeOperationAsync (/home/site/wwwroot/node_modules/mongodb/lib/operations/execute_operation.js:39:24) at /home/site/wwwroot/node_modules/mongodb/lib/operations/execute_operation.js:12:45 at maybeCallback (/home/site/wwwroot/node_modules/mongodb/lib/utils.js:338:21) at executeOperation (/home/site/wwwroot/node_modules/mongodb/lib/operations/execute_operation.js:12:38) { [Symbol(errorLabels)]: Set(0) {} }
补充信息
当前使用Azure免费订阅测试Web应用服务,无法获取官方技术支持,且已确认所有需要的IP地址均正确添加至MongoDB Atlas的IP白名单中。
内容的提问来源于stack exchange,提问作者user1063287
相关产品推荐
相关产品推荐

