我试图复制我的mongodb数据库,我在我的windows azure帐户上创建了2个VM。 它们都是Ubuntu 14.04。 我在两个端口上都打开了27017端口,并安装了mongodb最新版本。 我使用
开始使用mongomongod --port 27017 --dbpath /data/datadrive --replSet rs0
在两台计算机上,并使用
添加其他成员rs.add("内部IP地址:27017")
我一直有错误,我有两个初选,我正在其中一个论坛上阅读 它是因为/etc/mongodb.conf中的bind_ip配置而发生的 所以我将bind_ip更改为两个虚拟机上的其他Vm私有网络IP 在尝试添加服务器成员时,我遇到了以下错误。
在"主要"侧:
[rsMgr] not electing self, 100.79.138.73:27017 would veto with 'I don't think reptester1:27017 is electable'
[rsHealthPoll] replset info 100.79.138.73:27017 thinks that we are down
[rsHealthPoll] replset info 100.79.138.73:27017 thinks that we are down
和"中学"侧:
[rsHealthPoll] getaddrinfo("reptester1") failed: Name or service not known
[rsHealthPoll] couldn't connect to reptester1:27017: couldn't connect to server reptester1:27017 (0.0.0.0) failed, address resolved to 0.0.0.0
[rsHealthPoll] replset info reptester1:27017 just heartbeated us, but our heartbeat failed: , not changing state
[rsHealthPoll] getaddrinfo("reptester1") failed: Name or service not known
任何想法我做错了什么?
答案 0 :(得分:0)
你可以调试以下内容 -
将mongo端口从两台机器(即主节点和辅助节点)相互telnet。检查它是否有效。
我相信,在副本配置中,您使用rs.add(“reptester2”)来添加辅助服务器。请检查您的/ etc / hosts文件,ipaddress< - >主机映射应该存在于主机和辅助机器中。
如果您在主配置和辅助配置中都使用bind_ip。然后在主机(/ etc / hosts)文件或rs.add(“IP地址”)中使用该IP地址。请不要使用像127.0.0.1这样的本地IP地址。
答案 1 :(得分:0)
这是一个dns概率,因为成员[0]名称是Reptest1,辅助服务器解析地址ad reptest,而不是ip地址或dns地址。我编辑了会员主持人地址。他们开始互相联系。 我是用
做的$conf = rs.conf()
$conf.members[0].host = "mongo.cloudapp.net:27017"
rs.reconfig($conf)