Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 将密钥文件添加到现有Mongo复制集_Mongodb_Authentication_Replication - Fatal编程技术网

Mongodb 将密钥文件添加到现有Mongo复制集

Mongodb 将密钥文件添加到现有Mongo复制集,mongodb,authentication,replication,Mongodb,Authentication,Replication,我正在尝试向现有的具有3个节点的live Mongo 2.4.3实例添加身份验证。我生成了一个由mongodb拥有400个权限的密钥文件。此文件复制到所有3台服务器上的同一位置。我试图在客户没有注意到mongo正在下降的情况下添加密钥文件。实例的优先级设置为3、1和0,我将引用n1、n2和n3 以下是我迄今为止所做的尝试: 我用密钥文件重新启动了n2和n3。n1将自身变为二级,n2和n3未重新连接到复制集 我关闭了n2和n3,并用密钥文件重新启动了n1。在n1作为第二个出现在集合中之后,我用密钥

我正在尝试向现有的具有3个节点的live Mongo 2.4.3实例添加身份验证。我生成了一个由mongodb拥有400个权限的密钥文件。此文件复制到所有3台服务器上的同一位置。我试图在客户没有注意到mongo正在下降的情况下添加密钥文件。实例的优先级设置为3、1和0,我将引用n1、n2和n3

以下是我迄今为止所做的尝试:

我用密钥文件重新启动了n2和n3。n1将自身变为二级,n2和n3未重新连接到复制集 我关闭了n2和n3,并用密钥文件重新启动了n1。在n1作为第二个出现在集合中之后,我用密钥文件重新启动了n3,以允许大多数成员进行选举。然后n1和n3似乎从复制组中出来了。我在n1上得到这条信息:[不选择self,n3将否决“我不认为n1是可选举的”]
有什么想法吗?

你说的n1和n3似乎从复制集中出来是什么意思?出于选举目的,您应该尝试使用奇数个节点来进行选举。另外,如果添加了n2,那么它应该可以工作。客户端怎么可能没有注意到他们现在需要开始对副本集进行身份验证?具有keyfile的副本集节点无法与没有keyfile的其他节点进行通信。n1没有自己当选之后发生了什么?n1和n3是不是等了几秒钟才选出n1?@AbhishekKumar,在所有情况下,我的集合中的成员都是奇数。“碰巧他们中有一人不在,但他们应该能够自己选举。”AsyaKamsky,在我添加n3以获得选举初选所需的法定人数后,n1在其日志中一直说,它不会自己选举,因为n3会否决。