mongodb - 配置从 Azure 应用服务对 MongoDB 集群的网络访问

标签 mongodb azure

我正在尝试配置 MongoDB 群集的网络访问以允许来自 Azure 应用服务的连接。我在 Azure 门户中找到了我的应用服务的出站 IP 地址(请参阅 Azure docs )。并根据MongoDB Atlas docs将它们输入到IP访问列表中。我将“/32”附加到 IP 地址以仅允许单个主机 ( CIDR notation )。

但是,当尝试在应用服务启动时进行连接时,我收到一条错误消息,指示检查 MongoDB 集群的 IP 白名单。

这实际上似乎是问题所在,因为添加 0.0.0.0/0(允许从任何地方访问)可以解决问题。

这可能是什么问题?

我仔细检查了 Azure 应用服务的出站 IP 地址和 MongoDB 集群的 IP 访问列表。

我所做的确实是another question的答案,所以我想我错过了一些东西......

最佳答案

实际上/32 不是 Azure 中的有效 CIDR。单个VNET的最小大小为/29。 这会将您的范围限制为仅 3 个 IP(而不是您期望的 8 个),因为 Azure 将保留前 4 个 IP 和最后一个 IP 用于内部路由。

另请考虑,如果您在专用网络内运行 MongoDB 集群,并且该集群未通过网络设备(例如应用程序网关、负载均衡器、Front Door 或流量管理器)向外部公开,则您将需要启用 VNET Azure Web App 端的集成。

如果您遇到这种情况,请在门户中浏览您的应用程序并进入“网络”边栏选项卡。 在这里您可以添加 VNET 集成,但您应该考虑在这种情况下您的子网的最小大小只能是/28(您不能添加更小的子网)

关于mongodb - 配置从 Azure 应用服务对 MongoDB 集群的网络访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72378136/

相关文章:

node.js - MongoDB查询注释以及用户信息

java - spring data mongodb中的二维球体索引

mongodb - 如何在 mongo 聚合中使用 map 内部查找来查找数组中的所有元素

azure - 将 Azure-Data-Explorer 与 Azure-Data-Lake-Gen2 连接

azure - Azure Development Fabric 有哪些限制?

node.js - 根据 azure 搜索的分数计算相似度百分比

c# - 使用不记名 token 时,带有 AD 身份验证的 Azure 函数会导致 401 Unauthorized

mongodb - 使用 Axios 连接到 MongoDB Realm GraphQL 端点时如何避免 CORS 问题?

mongodb - 生成聚合结构

c# - 缺少 Microsoft.WindowsAzure.Diagnostics 程序集