Создаем каталоги для данных:
mkdir -p db1 db2 db3
В терминалах запустим несколько реплик в одном наборе "myset", на своих портах и со своими каталогами для данных:
$ mongod --port 27001 --dbpath db1 --replSet myset
$ mongod --port 27002 --dbpath db2 --replSet myset
$ mongod --port 27003 --dbpath db3 --replSet myset
Подключаемся к одной из реплик, делаем ее "мастером", подключаем к ней остальные реплики и проверяем:
$ mongo --port 27001
> rs.initiate()
> rs.add("myhost:27002")
> rs.add("myhost:27003")
> use test
> db.test.insert({id:1})
> db.test.find()
где "myhost" - имя хоста, которое можно увидеть в выводе команды rs.status()
Примечательно и прекрасно, что реплики могут находиться на разных машинах, увеличивая бутылочное горлышко I/O. В своих экспериментах я размещал реплики на PC с Windows 7 на борту, на Macbook и на Ubuntu в VirtualBox.
Важно, чтобы машина с репликой могла однозначно интерпретировать хост "мастера" в IP. На макбуке мне для этого пришлось добавить запись в /etc/hosts:
myhost 192.168.10.130
Комментариев нет:
Отправить комментарий