Когда вы начали свой первый экземпляр mongod
с параметром --replSet Replicaset1
, он настроен как часть набора реплик Replicaset1
.
И когда вы инициализировали набор реплик, этот экземпляр былдобавлен в реплику, установленную в качестве члена.Ниже приведен фрагмент вывода rs.status()
{
"_id" : 0,
"name" : "localhost:27018",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 228,
"optime" : {
"ts" : Timestamp(1569751005, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2019-09-29T09:56:45Z"),
"electionTime" : Timestamp(1569750830, 2),
"electionDate" : ISODate("2019-09-29T09:53:50Z"),
"configVersion" : 3,
"self" : true
}
. Как видите, имя члена равно "localhost:2018"
.
Итак, когда вы пытаетесь добавить другого члена в эту репликуустановить rs.add('ThinkPad-X230:27019')
, это дает вам следующую ошибку, которая является допустимой ошибкой, которая должна быть выдана, поскольку один элемент "localhost:2018"
, а другой, который вы пытаетесь добавить, - "ThinkPad-X230:27019"
, и оба должны быть localhost
.
"errmsg" : "Either all host names in a replica set configuration must be localhost references, or none must be; found 1 out of 2"
Попробуйте добавить участника, используя следующую команду:
rs.add("localhost:27019")
И он будет успешно добавлен.