Я пытаюсь создать набор реплик с помощью MongoDb, имена хостов серверов:
имя хоста имя хоста-1 имя хоста-2
У каждого из них есть все соответствующие имена хостов, подробно описанные в файле /etc/hosts (они все запустили Ubuntu 10.04 64-bit)
Когда я делаю rs.initiate на одном node, все, кажется, начинается хорошо. Запуск rs.status(); показывает:
{
"set" : "vega",
"date" : ISODate("2012-01-22T19:15:55Z"),
"myState" : 1,
"members" : [
{
"_id" : 0,
"name" : "hostname:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"optime" : {
"t" : 1327254848000,
"i" : 1
},
"optimeDate" : ISODate("2012-01-22T17:54:08Z"),
"self" : true
}
],
"ok" : 1
}
Проблема возникает, когда я пытаюсь добавить новый член в набор реплик. Я использую команду rs.add(hostname-1); и я получаю следующую ошибку:
{
"assertion" : "need most members up to reconfigure, not ok : vega-1:27017",
"assertionCode" : 13144,
"errmsg" : "db assertion failure",
"ok" : 0
}
Я пробовал множество комбинаций использования имени хоста, IP-адреса, как с номером порта, так и без него, и я всегда получаю ту же проблему. Имя хоста разрешается, я пробовал ping hostname-1, и он отлично работает.
Есть ли у кого-нибудь идеи относительно того, что может вызвать эту проблему?
К сожалению, в документации Mongo нет примеров настройки набора реплик в реальном мире, только используя три экземпляра на той же машине, которая явно бесполезна.
Заранее благодарим за помощь!