MongoDB v4.0.0副本配置无法安装

时间:2018-12-14 10:48:42

标签: mongodb mongodb-replica-set

我正在尝试在安装了MongoDB v4.0.0的3台机器(操作系统UbuntuMATE 18.04)中配置复制。

我正在使用Deploy a MongoDB Replica Set链接作为参考。并尝试进行如下配置...

步骤1: 使用本地IP和主机名更新所有三台计算机的主机文件 即

127.0.0.1   localhost
192.168.10.158  dell-Inspiron-15-7000-Gaming
192.168.10.125  dell-1080x2
192.168.10.124  vivek-pc

然后为我的/etc/mongod.conf的每台计算机配置如下...

mongod.conf 192.168.10.158

storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true
# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1, 192.168.10.158

# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo

replication:
  replSetName: rs-test

mongod.conf 192.168.10.124

storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1, 192.168.10.124

# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo
replication:
  replSetName: rs-test

mongod.conf 192.168.10.125

storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1, 192.168.10.125

# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo
replication:
  replSetName: rs-test

然后我重新启动了所有三个MongoDB。

现在我想了解以下内容...

  1. 我遵循的步骤对MongoDB V4是正确的吗?
  2. 重新启动后,当我使用shell命令mongo连接到mongo时。在所有三个实例中,都显示为rs-test:PRIMARY>。 (根据参考,有一个小学,另外两个是中学)。那么这是怎么了?
  3. 当我尝试使用rs.initiate()在One Machine中启动副本集时。它返回我以下错误消息...
{
  "operationTime" : Timestamp(1544783790, 1),
  "ok" : 0,
  "errmsg" : "already initialized",
  "code" : 23,
  "codeName" : "AlreadyInitialized",
  "$clusterTime" : {
      "clusterTime" : Timestamp(1544783790, 1),
      "signature" : {
          "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
          "keyId" : NumberLong(0)
      }
  }
}

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我进行了三处更改,现在可以使用...

  1. 在所有三台计算机上清除/ var / lib / mongodb目录
  2. 更新/etc/mongod.conf(我认为没有必要),并从绑定Ip中删除127.0.0.1(在绑定Ip字段中仅意味着localIp或LiveIp),并在双引号中添加副本集名称,即“ rs-test” 。

然后重新启动所有三个MongoDB实例,并将以下命令添加到192.168.10.158 DB中使其成为主要实例。

rs.initiate()
rs.add("dell-1080x2")
rs.add("vivek-pc")