实例是新的,没有数据,是使用Ubuntu 14.04上由Bitnami支持的Parse服务器在AWS Marketplace中创建的。
我尝试使用rs.add()
添加节点但出现此错误:
rs0:PRIMARY> rs.add( "172.31.39.86:27017" )
{
"ok" : 0,
"errmsg" : "Quorum check failed because not enough voting nodes responded; required 2 but only the following 1 voting nodes responded: ip-172-31-44-97:27017; the following nodes did not respond affirmatively: 172.31.39.86:27017 failed with Failed attempt to connect to 172.31.39.86:27017; couldn't connect to server 172.31.39.86:27017 (172.31.39.86), connection attempt failed",
"code" : 74
}
实例的PrivateIP我试图添加到ReplicaSet" rs0"是 172.31.39.86 ,当前PRIMARY实例的PrivateIP是 172.31.44.97 。
我所做的步骤描述如下:
SSH实例(分别在不同终端的两个实例中)
ssh ubuntu @ InstancePublicIP -i KeyFileName
关闭MongoDB(在两个实例中)
sudo /opt/bitnami/ctlscript.sh stop
通过添加replSet = rs0
(在两个实例中)编辑 mongodb.conf 文件
sudo nano /home/bitnami/stack/mongodb/mongodb.conf
看起来像这样:
dbpath=/opt/bitnami/mongodb/data/db
logpath=/opt/bitnami/mongodb/log/mongodb.log
logappend=true
bind_ip = 0.0.0.0
port = 27017
auth = true
setParameter = enableLocalhostAuthBypass=0
unixSocketPrefix=/opt/bitnami/mongodb/tmp
fork = true
setParameter = enableLocalhostAuthBypass=0
replSet = rs0
filePermissions = 0766
重启MongoDB(在两个实例中)
sudo /opt/bitnami/ctlscript.sh restart
访问MongoDB(在其中一个实例中" 172.31.44.97" )
mongo admin --username root --password fromSystemLog
启动复制集(在其中一个实例" 172.31.44.97" 的MongoDB shell中)
rs.initiate()
将节点添加到PRIMARY(在其中一个实例" 172.31.44.97" 的MongoDB shell中)
rs.add(" 172.31.39.86")
答案 0 :(得分:0)
当rs.add -process期间主节点无法连接该辅助节点时,会出现该错误消息。原因通常是目的地的防火墙,防止流量到SSH以外的任何其他端口。
如果转到(当前PRIMARY)mongodb节点的命令行并发出命令mongo --host 172.31.39.86:27017
,则另一个mongo节点应该回答。如果没有,那么与该节点的连接不起作用或节点不工作。