gpt4 book ai didi

mongodb - 无法从 GKE pod 连接到 MongoDB Atlas

转载 作者:行者123 更新时间:2023-12-02 12:13:06 28 4
gpt4 key购买 nike

我有一个在 Google Cloud Kubernetes 上运行的 pod,我有一个在 Atlas 上运行的 MongoDB 集群。
问题很简单:

如果我允许来自 Atlas MongoDB 上任何地方的 IP,我可以连接。
如果我添加 pod 的 IP(所以不再来自任何地方),它就不起作用。


我也在本地尝试过,并且也从本地运行的 docker 中尝试过,它可以工作。

我使用以下方法获得了我的 pod 的 IP (YY.YYY.YYY.YY):

MacBook-Pro-de-Emixam23:plop-service emixam23$ kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
polop-service LoadBalancer XX.XX.X.XXX YY.YYY.YYY.YY ZZZZZ:32633/TCP,ZZZZZ:32712/TCP 172m
kubernetes ClusterIP XX.X.X.X <none> 443/TCP 3h24m

但是通过我得到的行为.. 我觉得这个 EXTERNAL-IP 不是发送我的请求的 IP。

谁能向我解释可能是什么问题?

最佳答案

暴露给 Mongo Atlas 的 IP 应该是 Internet 可访问的 IP(或称为公共(public) IP)。

通常它应该是网络网关 IP(或代理服务器的 IP,如果您使用代理)。

通过在 pod 中运行以下命令来检查 IP 的一种快速方法

curl ifconfig.me

如果您的 pod 不支持此命令,您可以 kubectl exec -ti <pod_name> -- sh在其中并安装此命令。

记住 : 通常 IP 不是只有一个,应该有 3 个或更多通过网络网关面向公众的 IP,您需要找到它们并添加到 Mongo Atlas 白名单

关于mongodb - 无法从 GKE pod 连接到 MongoDB Atlas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60290041/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com