【问题标题】:How to access mongoDB atlas from google cloud function using serverless VPC如何使用无服务器 VPC 从谷歌云功能访问 mongoDB 地图集
【发布时间】:2020-04-01 10:48:53
【问题描述】:

我有一个谷歌云功能,需要访问托管在 Atlas (GCP) 上的 MongoDB。 此云功能需要访问托管在 GCP 外部的特定 API。出于安全原因,他们需要在其防火墙规则中允许云功能 IP 地址。

为了启用静态 IP 地址请求,我创建了一个无服务器 VPC 连接器并为我的云功能配置了所有出口流量。

配置后,即使我允许所有传入流量(仅用于测试),来自我的云功能的 mongoDB 连接也会失败。

我在考虑 VPC 对等互连以允许云功能访问 mongoDB,但我还没有能够配置它。 VPC 配对显示为“PENDING”状态。

  1. Serverless VPC 是否保证静态 IP 地址?

  2. 为什么即使允许所有传入流量,我也无法通过无服务器 VPC 连接器连接到 mongoDB?

  3. 我们可以在无服务器 VPC 和 mongodb atlas 之间配置 VPC 对等吗?

【问题讨论】:

    标签: mongodb google-cloud-functions mongodb-atlas google-vpc


    【解决方案1】:
    1. 是的,无服务器 VPC 访问保证静态 IP 地址是您执行正确的设置(使用 Cloud Nat 和路由器通过 Cloud Nat 路由无服务器 VPC 访问 IP-Range 并在云中使用静态 IP纳特)

    2. 您无法通过无服务器 VPC 连接器访问 MongoDB,因为您的路由没有明确定义,并且由于第 3 点

    3. 您可以在 MongoDB Atlas 和您的 VPC 之间执行对等互连。为此,follow this page。如果您对等处于待处理状态,我认为那是因为尚未执行 GCP 部分。然后正确定义您的路由并确保您的防火墙允许通信,这应该可以工作!

    【讨论】:

    • 谢谢。我没有太多的网络配置,但是到目前为止我所做的事情是:我在防火墙上添加了一个出口规则,基本上允许 Atlas CIDR 192.168.0.0/16 用于所有流量在 Atlas 上我已将 IP 范围列入白名单对于 us-central1 (cloud.google.com/vpc/docs/vpc#ip-ranges) 我仍然看到 GCP 上的状态为 Inactive 并且在 mongoDB 上处于待处理状态
    • 打开出口防火墙规则和进行对等是不同的。遵循所有步骤以获得稳定的对等连接。
    • 我在这方面还没有多少运气。我已根据文档添加了所需的内容,并将 VPC CIDR 列入了 atlas 的白名单。我仍然看到这个“不活动”。让我看看能不能找到更多关于此的日志
    • 我能够完成静态 IP 和对等互连。我错过了 Cloud NAT,难怪它不起作用。如前所述,它需要无服务器 VPC 和 Cloud NAT 来确保所有出口都可以访问互联网。定义 NAT 后,其余部分开始按照文档工作
    猜你喜欢
    • 1970-01-01
    • 2019-05-15
    • 1970-01-01
    • 2020-09-23
    • 2021-08-21
    • 1970-01-01
    • 2020-12-22
    • 2020-11-29
    • 2021-03-14
    相关资源
    最近更新 更多