Конфигурация кластера Bigcouch - PullRequest
0 голосов
/ 09 декабря 2011

В настоящее время я пробую bigcouch, и я не совсем понимаю, как он идентифицирует узлы в кластере.Например, кластер dev состоит из 3 узлов, прослушивающих порты 15984/15986, 25984/25986 и 35984/35986.Когда мы добавляем узлы в кластер, мы добавляем документы с идентификатором «dev2@127.0.0.1» и «dev3@127.0.0.1» в базу данных узлов (см. http://bigcouch.cloudant.com/develop). Теперь, где номера портов? Как узел 1 узнает, чтоузлы 2 и 3 слушают вышеприведенные банки? И связанный с этим вопрос: если я хочу добавить узел, расположенный на другом хосте, в этот кластер, как мне это сделать? Добавление dev1 @ IP не работает, bigcouchне может подключиться к нему.

Ответы [ 2 ]

0 голосов
/ 14 декабря 2011

Проблема была решена - похоже, что два узла bigcouch должны иметь один и тот же магический файл cookie для успешного взаимодействия. Когда кластер dev установлен, этот магический файл cookie генерируется автоматически, поэтому невозможно добавить узлы из другого кластера, если только магические файлы cookie не синхронизированы вручную. Необходимо добавить следующую строку в /opt/bigcouch/rel/*/etc/vm.args:

-setcookie any_string

0 голосов
/ 09 декабря 2011

Узлы Bigcouch взаимодействуют друг с другом, используя распределенные примитивы erlang (, а не http). Имена узлов имеют форму «имя @ хост», которой достаточно для взаимодействия узлов. В частности, они связываются с демоном epmd (http://www.erlang.org/doc/man/epmd.html) через известный порт на удаленных хостах.

http://www.erlang.org/doc/reference_manual/distributed.html

...