无法连接到mongodb副本集Google Compute Engine

问题描述

我已经在Google计算引擎上为mongodb创建了一个3节点副本集,出于测试目的,我为防火墙规则添加了0.0.0.0/0,并且能够从任何地方连接到单个节点,并且所有实例都可以工作没有任何问题!但是问题是当我尝试使用以下命令连接到副本集时

mongo "mongodb://username:password@public-ip-1:27017,public-ip-2:27017,public-ip-3:27017/production?replicaSet=rs0"
  1. 当我在同一项目中尝试此代码的另一个实例时,它没有任何问题
  2. 当我尝试使用其他项目实例或本地实例时,它会引发错误,如下所示

2020-08-22T14:36:40.579 + 0530 I NETWORK [thread1] getaddrinfo(“ mongodb-1-servers-vm-0”)失败:提供了节点名或服务名,或者未知 2020-08-22T14:36:40.582 + 0530 I NETWORK [thread1] getaddrinfo(“ mongodb-1-servers-vm-1”)失败:提供了节点名或服务名,或者未知 2020-08-22T14:36:40.582 + 0530 W NETWORK [thread1]无法达到设置rs0的主要级别

从这些实例中,我可以分别连接到各个节点,

mongo "mongodb://username:passsword@public-ip-1:27017/production"
mongo "mongodb://username:passsword@public-ip-2:27017/production"
mongo "mongodb://username:passsword@public-ip-3:27017/production"

可能是什么问题?

第二个问题是,在防火墙上,这是添加App Engine服务帐户的选项吗?因此,如果我禁用了0.0.0.0/0公共访问权限并添加了此规则,我可以从我的应用程序引擎连接到这些实例吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)